|
|
|
| Есть форма с полями и радиокнопками.
в onsubmit прописана функция (с return false).
В этой функции мне надо обработать некотрые данные, а потом ВСЕ данные формы передать AJAXом в скрипт.
Вопрос, вот можно как-то автоматически получить значения всех элементов формы (в формате key=value или еще как-то) или только поэлементно с помощью getElement(s) ? | |
|
|
|
|
|
|
|
для: ddhvvn
(15.04.2009 в 15:53)
| |
<script>
function zzz(){
var obj = document.forms['name_form'];
for(i = 0; i < obj.length; i++){
alert(obj[i].name);
alert(obj[i].value);
alert(obj[i].name+'='+obj[i].value);
}
}
</script>
<form action="" method="post" name="name_form">
<input name="name_text1" type="text" value="1111" /><br />
<input name="name_text2" type="text" value="2222" /><br />
<input name="name_submit" type="submit" onClick="zzz(); return false;" value="отправить" />
</form>
|
Или только нужное
function zzz(){
alert(document.name_form.name_text1.name+'='+document.name_form.name_text1.value);
alert(document.name_form.name_text2.name+'='+document.name_form.name_text2.value);
}
|
| |
|
|
|
|
|
|
|
для: mikha
(15.04.2009 в 16:38)
| | Я вообще то это и указал как Вариант, а то что Вы вместо getElement, обращались по имени, его не меняет... | |
|
|
|
|
|
|
|
для: ddhvvn
(15.04.2009 в 15:53)
| | >можно как-то автоматически получить значения всех элементов формы
Нет, автоматически нельзя.
>только поэлементно?
Да, поэлементно.
>с помощью getElement(s)?
Не только.
Можно и через коллекцию ФОРМА.elements, определяя, есть ли у элемента атрибут NAME и, если есть, то пара NAME=VALUE этого элемента будет передаваться при сабмите формы.
PS. Учтите один нюанс. При сабмите данных методом GET длина URL вместе с тем, что передаётся, имеет ограничение по длине - 216 символов. И если длина URL ресурса, указанного в ACTION формы ПЛЮС один (символ вопроса) ПЛЮС длины всех имеющихся пар NAME=VALUE ПЛЮС количество межпарных амперсандов-раделителей в сумме будет больше 216, то значение передаваемой строки обрежется, а вот ваш скрипт (который обойдёт элементы формы перед сабмитом) такого ограничения не имеет (если вы сами его не сделаете). | |
|
|
|
|
|
|
|
для: PAT
(15.04.2009 в 18:15)
| | >Можно и через коллекцию ФОРМА.elements, определяя, есть ли у элемента атрибут NAME и, если есть, то пара NAME=VALUE этого элемента будет передаваться при сабмите формы.
Я в курсе, но просто считал его однотипным с указанным )
>PS. Учтите один нюанс.
Да я в курсе, спасибо. Я и так передаю методом POST. =) | |
|
|
|