Небольшой вопрос по jQuery
Всем привет!
Делаю на сайте выбор регионов и столкнулся с проблемкой, сейчас попробую объяснить ее суть: Есть форма , в ней по умолчанию только поле id_country , при выборе значения появляется список городов id_city , затем районы и так далее. Так вот , суть в том , что при отправлении этой формы на сервер приходит только значение id_country , а те элементы которые были добавлены не приходят. Для отправки формы использую form.jquery.js (http://www.malsup.com/jquery/form) Подскажите пожалуйста в какую сторону копать? Спасибо! |
Помоему ты читаешь значение val(), а выбранные елементы находятся в text();
|
Хм, да значения получаю через val , точнее сравниваю
А можно поподробнее про text? Причем он здесь не очень понял. |
Да вот тебе с оф сайта даже пример
http://docs.jquery.com/Frequently_As...ment_exists.3F в разделе How do I get the text value of a selected option? |
Спасибо за ссылку!
Да, это я понял , но видимо я некорректно пояснил. Попробую еще раз , у меня PHP скрипт не получает подгруженные значения элементов , например структура формы такова: <form> <div id="d1"> <select name="a1"> <option value=1>1</option> <option value=2>2</option> </select> </div> <div id="d2"> </div> </form> При выборе значения в select a1 , я подгружаю данные в div d2 , получается примерно так: <form> <div id="d1"> <select name="a1"> <option value=1>1</option> <option value=2>2</option> </select> </div> <div id="d2"> <select name="a2"> <option value=1>1</option> <option value=2>2</option> </select> </div> </form> Это все замечательно работает со стороны javascript, проблема в следующем: При отправке этой формы PHP скрипту в нем я получаю только значение переменной a1 , т.е. изначально определенной, а a2 , которая была подгружена с помощью ajax этому скрипту почему то не передается. |
А если форму биндить после ее изменений, тоже самое происходит?
|
Хм, этого я не делал , но в принципе нашел выход из ситуации , я в url просто подгружаю значения этих полей
|
Аяксом не добавляй, просто скрывай select с помощью display:none;, а когда надо display:block;
Или аяксом форму отправляй и када ответ придёт перенаправляй браузер куда надо. А код скрипта можно увидеть? |
Вот тут тему похожую обсуждают http://forum.dklab.ru/s/js-10/other-28/28401/
|
И вот ещё рабочий пример надыбал надеюсь это то что надо:)
function addInput() { /* default-id — скрытый элемент формы, из которого берется id для первого создаваемого элемента */ var id = document.getElementById("default-id").value; id++; /* в форму с именем testform добавляем новый элемент */ $("form[name=testform]").append('<div id="div-' + id + '"><input name="input-' + id + '" id="input-' + id + '" value="' + id + '"><a href="javascript:{}" onclick="removeInput(\'' + id + '\')">Удалить</a></div>'); /* увеличиваем счетчик элементов */ document.getElementById("default-id").value = id; } <form name="testform" action="test.php" method="POST"> <input type="hidden" id="default-id" value="0"> <input type="submit" value="Отправить!"> </form> <a href="javascript:{}" onclick="addInput()">Добавить текстовое поле</a><br> |
Часовой пояс GMT +3, время: 03:40. |