|
Как заносить значения SELECT в другую строку?
|
|
| MyPlace | Отредактировал MyPlace - Воскресенье, 04 Марта 2012, 12:16 Дата: 04 Марта 2012, 12:15 | Сообщение # 1 | ● ● ● ● ● 58 сообщений Статус: Offline | Мужики, помогите... Есть строка name="other1" Нужно, чтобы вместо нее был select со значениями. И естественно чтобы выбранные значения заносились в спрятанную строку с дальнейшим отсыланием на сервер. Вот что имеем:
Code $('input[name="other1"]').hide().parent().html('<select id="filter1select" name="filter1select" onchange=""><option value="0"></option><option value="1">49</option><option value="2">70-110</option><option value="3">125-150</option><option value="4">160-300</option><option value="5">350-500</option><option value="6">600-800</option></select>')
А дальше как? | | |
|
| imapo | Дата: 05 Марта 2012, 08:40 | Сообщение # 2 |  ● ● ● ● ● Группа: Редакторы 831 сообщение Статус: Offline | Code $('input[name="other1"]').hide().parent().html('<select id="filter1select" name="filter1select" onchange=""><option value="0"></option><option value="1">49</option><option value="2">70-110</option><option value="3">125-150</option><option value="4">160-300</option><option value="5">350-500</option><option value="6">600-800</option></select>'); $('#filter1select').change(function() { $('input[name="other1"]').val($(this).val()); }); | | |
|
| MyPlace | Дата: 05 Марта 2012, 11:07 | Сообщение # 3 | ● ● ● ● ● 58 сообщений Статус: Offline | Не, не работает. Ничего не происходит...  | | |
|
| imapo | Дата: 05 Марта 2012, 13:09 | Сообщение # 4 |  ● ● ● ● ● Группа: Редакторы 831 сообщение Статус: Offline | MyPlace, всё работает, проверил. Вот тебе наглядный пример: Code <input name="other1" value="Тест" />
<script> $('input[name="other1"]').before('<select id="filter1select" name="filter1select" onchange=""><option value="0"></option><option value="49">49</option><option value="70-110">70-110</option><option value="125-150">125-150</option><option value="160-300">160-300</option><option value="350-500">350-500</option><option value="600-800">600-800</option></select>'); $('#filter1select').change(function() { $('input[name="other1"]').val($(this).val()); }); </script> | | |
|
| MyPlace | Дата: 05 Марта 2012, 14:46 | Сообщение # 5 | ● ● ● ● ● 58 сообщений Статус: Offline | Да, пардон, действительно работает. Просто нужно как-то по-другому спрятать строку. А ещё как сделать, чтобы при загрузке страницы редактирования товара - в селекте уже было выбранное ранее значение? | | |
|
| imapo | Дата: 05 Марта 2012, 17:37 | Сообщение # 6 |  ● ● ● ● ● Группа: Редакторы 831 сообщение Статус: Offline | Code <input name="other1" value="5" /> <script> $('input[name="other1"]').hide(0).before('<select id="filter1select" name="filter1select" onchange=""><option value="5">5</option><option value="49">49</option><option value="70-110">70-110</option><option value="125-150">125-150</option><option value="160-300">160-300</option><option value="350-500">350-500</option><option value="600-800">600-800</option></select>'); $('#filter1select').change(function() { $('input[name="other1"]').val($(this).val()); }); </script> | | |
|
| MyPlace | Дата: 06 Марта 2012, 11:31 | Сообщение # 7 | ● ● ● ● ● 58 сообщений Статус: Offline | Вот этого не понял. Зачем указывать явное значение, добавленное "5"? Когда нужно, чтобы выводилось то, что было введено ранее в спрятанной строке. Может сделать это условиями? Типа если введено "49", то выводить value="49"? | | |
|
| imapo | Дата: 06 Марта 2012, 11:53 | Сообщение # 8 |  ● ● ● ● ● Группа: Редакторы 831 сообщение Статус: Offline | MyPlace, для наглядности | | |
|
| nick1594 | Дата: 06 Марта 2012, 12:19 | Сообщение # 9 |  ● ● ● ● ● 2 сообщения Статус: Offline | спасибо за пример, какраз что мне надо)
а можна еще сделать что бы выбраное ранее значение, при редактировании было выелено? | | |
|
| MyPlace | Дата: 06 Марта 2012, 15:13 | Сообщение # 10 | ● ● ● ● ● 58 сообщений Статус: Offline | imapo, ну так а как же всё-таки сделать, чтобы при загрузке страницы редактирования введённое ранее значение уже было выбрано в селекте? | | |
|
| imapo | Дата: 06 Марта 2012, 16:24 | Сообщение # 11 |  ● ● ● ● ● Группа: Редакторы 831 сообщение Статус: Offline | MyPlace, nick1594, думаю, поделится. Вроде как он добился того, чего хотел | | |
|
| MyPlace | Отредактировал MyPlace - Вторник, 06 Марта 2012, 16:53 Дата: 06 Марта 2012, 16:53 | Сообщение # 12 | ● ● ● ● ● 58 сообщений Статус: Offline | imapo, nick1594 не поделится, т.к. задал тот же самый вопрос, что и я: а можна еще сделать что бы выбраное ранее значение, при редактировании было выелено?
imapo, не ленись, помоги!  | | |
|
| imapo | Дата: 06 Марта 2012, 19:57 | Сообщение # 13 |  ● ● ● ● ● Группа: Редакторы 831 сообщение Статус: Offline | MyPlace, он у меня в чате к ответу верному пришёл, так что жди  | | |
|
| nick1594 | Отредактировал nick1594 - Среда, 07 Марта 2012, 21:42 Дата: 07 Марта 2012, 21:28 | Сообщение # 14 |  ● ● ● ● ● 2 сообщения Статус: Offline | MyPlace, вот на тебе код вставишь на страницу добаления/редактирования после $BODY$
Code <script language="javascript" type="text/javascript"> $('input[name="other1"]').hide().before('<select id="sel" name="fl"><option value="5">5</option><option value="49">49</option><option value="70-110">70-110</option><option value="125-150">125-150</option><option value="160-300">160-300</option><option value="350-500">350-500</option><option value="600-800">600-800</option></select>');
<?if($PAGE_ID$='edit')?> $(function () { var fsell = $('input[name="other1"]').val(); if(fsell != '') { $('#sel').val(fsell)} }) <?endif?> </script> | | |
|
| MyPlace | Дата: 09 Марта 2012, 13:28 | Сообщение # 15 | ● ● ● ● ● 58 сообщений Статус: Offline | nick1594, спасибо! "+" не работает у меня почему-то... | | |
|
| imapo | Дата: 09 Марта 2012, 21:53 | Сообщение # 16 |  ● ● ● ● ● Группа: Редакторы 831 сообщение Статус: Offline | MyPlace, замечаний многовато получил | | |
|