Подскажите как привязать Select к скрипту.
Добрый день!
Прошу помощи, разобраться со скриптом. Есть кнопка, передающая несколько параметров. <input type="button" onclick="Item.add_item('{$page.id}','{$page.title}','{$item}',$(this).next().val());$(this).val('Выбрано').attr('disabled','disabled');" value="Выбрать"><input type="text" class="number" value="1" size="1"> Интересует параметр $item, а именно как передать значение Select в этот параметр. Вот сам Select: Код:
<select name="item" class="item" > P.S. переменная $item выбрана произвольно, если указать к примеру {$item = '123'} То скрипт этот параметр собирает. |
Sempai, ты серверную переменную с ДОМ-элементом не путай...
|
Значит не реально... :(
|
Цитата:
|
Цитата:
Сам модуль состоит из php страницы, где прописаны эти элементы( типа: Код:
$data = array( var Item = new Object({ add_item: function(id, title, item, number) { $.ajax({ url: '/item/add_item', type: 'post', data: ({'id': id, 'title': title, 'item': item, 'number': number}), success: function(data) { alert('Данные успешно сохранены!'); }, error: function(data) { } }); } }); Такие параметры, как title, id уже присутствуют в массиве страницы, параметр number добавлен этим модулем, параметр item хочу добавить я. Вот я и спросил, как этот параметр привязать к Select... Спасибо! |
Пипец у тебя каша в обработчике или я чет не понимаю. jquery с селектами так работает http://jquery-docs.ru/Selectors/selected/ .
|
Если не сложно, приведите пример, как подвесть этот код на onclick,
ибо для меня пока это тяжеловато. Спасибо! |
Подвесить можно, например, так:
$('.number').on('click', function() { $("select option:selected").each(function () { item += $(this).text() + " "; }); }); но это если селект один на странице (и кнопка тоже), на что не похоже. |
Попробовал, не сработало.
|
а покажешь, что пробовал?
|
Цитата:
|
.number в данном случае это не переменная, а класс кнопки. и полученную переменную нужно(непонятно в каком виде: массив, строка или хз) передать в функцию add_item, которая находится в объекте Item. и нужно весь обработчик из онклика в отдельную фцию выносить. я же просто пример написал, как с селектами работать. по предоставленной информации больше ничем помочь не могу.
слона то я и не заметил: <input type="button" onclick="Item.add_item('{$page.id}','{$page.title} ',$(this).next().val());$(this).val('Выбран ').attr('disabled','disabled');" value="Выбрать"><input type="text" class="number" value="1" size="1"> var Item = new Object({ add_item: function(id, title, number) { var item= ""; $("select option:selected").each(function () { item += $(this).text() + " "; }); $.ajax({ url: '/item/add_item', type: 'post', data: ({'id': id, 'title': title, 'item': item, 'number': number}), success: function(data) { alert('Данные успешно сохранены!'); }, error: function(data) { } }); } }); что то тип того, но весьма условно(нужен ли разделитель и подойдет ли пробел как разделитель), и если селектов несколько, то корректно работать не будет. |
Да вставка в onclic $('#item').val(), решила мою проблему.
|
Часовой пояс GMT +3, время: 10:54. |