Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   как обработать форму у которой name массив ? (https://javascript.ru/forum/events/43172-kak-obrabotat-formu-u-kotorojj-name-massiv.html)

ninzzo 25.11.2013 12:42

как обработать форму у которой name массив ?
 
var n = $("#form").val(); Работает.

var n = $("#form['1']").val(); Не работает.


Почему???? Как сделать правильно?

ksa 25.11.2013 13:28

Цитата:

Сообщение от ninzzo
у которой name массив ?

Хоть бы пример той формы привел... :)

Цитата:

Сообщение от ninzzo
var n = $("#form").val();
Работает.

Применительно к форме это вообще х/з, что такое... :D

Цитата:

Сообщение от ninzzo
var n = $("#form['1']").val();
Не работает.

Эо как понимать слова "не работает"... :D Ошибку не дает - значит таки работает!
А то, что получается фигня - это уже другое дело... ;)

ninzzo 25.11.2013 14:11

ок. подробнее:
нажимаю на кнопку "добавить услугу" и она запускате функцию:

$( "#main" ).append('<div id="form2"><table>\
<tr><td>Количество<td><input type="text" id="form[]" name="form[]">\
 </div></table>');


Вот в форму нижу добавится одно поле при клике на "добавить услугу".
<form method="post" action="" id="form_id">
<div id="main">
</div>
<input type="button" value="Отправить">
</form>



Если я нажал 3 раза на добавить услугу то в итоге получаю такую форму:

<form method="post" action="" id="form_id">
<div id="main">
<div id="form2"><table>
<tr><td>Количество<td><input type="text" id="form[]" name="form[]">
 </div></table>
<div id="form2"><table>
<tr><td>Количество<td><input type="text" id="form[]" name="form[]">
 </div></table>
<div id="form2"><table>
<tr><td>Количество<td><input type="text" id="form[]" name="form[]">
 </div></table>
</div>
<input type="button" value="Отправить">
</form>


тут нормально объяснил?

Теперь я хочу получить значение всех интуп на странице которые я добавил. Как мне сделать выборку?

$("#form['0']").val(); - НЕ РАБОТАЕТ!

Как мне правильный синтаксис написать?

ninzzo 25.11.2013 14:12

еще проще обьясню:
есть на старнице:

<input type="text" id="form[]" name="form[]">
<input type="text" id="form[]" name="form[]">


Как мне при помощи js или jquery узнать значения этих инпутов?

ksa 25.11.2013 14:17

Начнем с того, что ИД должен быть уникальным на странице... :D

ksa 25.11.2013 14:20

Цитата:

Сообщение от ninzzo (Сообщение 282634)
есть на старнице:

<input type="text" id="form[]" name="form[]">
<input type="text" id="form[]" name="form[]">


Как мне при помощи js или jquery узнать значения этих инпутов?

Уберу неправильные ИД...

<input type="text" name="form[]" value='0'/>
<input type="text" name="form[]" value='1'/>
<script type="text/javascript">
var o=document.getElementsByName('form[]');
alert('Первое значение '+o[0].value);
alert('Второе значение '+o[1].value);
</script>

ksa 25.11.2013 14:23

Цитата:

Сообщение от ninzzo
Как мне правильный синтаксис написать?

Для начала нужно сформировать правильный контент на странице...

Цитата:

Сообщение от ninzzo
Теперь я хочу получить значение всех интуп на странице которые я добавил.

Если речь идет только о добавленых инпутах - советую их добавлять в один общий контейнер. Т.о. все, что внутри и будет "добавленым"...

ksa 25.11.2013 14:28

Цитата:

Сообщение от ninzzo
нажимаю на кнопку "добавить услугу" и она запускате функцию:

$( "#main" ).append('<div id="form2"><table>\<tr><td>Количество<td><input type="text" id="form[]" name="form[]">\ </div></table>');

И тут ошибка...
Сначала закрывается ДИВ, потом таблица... А открывалось все в обратной последовательности...

ninzzo 25.11.2013 14:29

var o=document.getElementsByName('form[]');
alert('Первое значение '+o[0].value);
alert('Второе значение '+o[1].value);


то что нужно благодарен вам)))

а что нельзя в случае с
<input type="text" id="form[]" name="form[]">
<input type="text" id="form[]" name="form[]">


вот так
var o=document.getElementsByID('form[]');

нельзя? А почему ? =)))

ksa 25.11.2013 14:32

Цитата:

Сообщение от ninzzo (Сообщение 282645)
а что нельзя в случае с
<input type="text" id="form[]" name="form[]">
<input type="text" id="form[]" name="form[]">


вот так
var o=document.getElementsByID('form[]');

нельзя? А почему ? =)))

Так уже руки все в кровь! :D
Цитата:

Сообщение от ksa
Начнем с того, что ИД должен быть уникальным на странице...



Часовой пояс GMT +3, время: 12:43.