Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблема с проверкой формы (https://javascript.ru/forum/misc/15552-problema-s-proverkojj-formy.html)

Manul_87 03.03.2011 20:31

Проблема с проверкой формы
 
Добрый вечер. При написании скрипта проверки сложной формы столкнулся с проблемой:
В форме есть ряд элементов, с названием: polz_name[]

Как вызвать значения этих элементов в javascript?

addform.polz_name[].value или addform.polz_name[0].value выдает ошибку.

рони 04.03.2011 08:41

Как обратиться к имени с квадратными скобками ...
Вариант 1
<input name="polz_name[]" value="1" />
<input name="polz_name[]" value="2" />
<input name="polz_name[]" value="3" />
<script type="text/javascript">
var n = document.getElementsByName('polz_name[]');
n[0].value="text"
</script>

Вариант 2
<form name="addform" action="http://">
<input name="polz_name[]" value="1" />
<input name="polz_name[]" value="2" />
<input name="polz_name[]" value="3" />
</form>
<script type="text/javascript">
  document.addform["polz_name[]"][0].value="text"
</script>

ksa 04.03.2011 08:56

Частенько уже натыкаюсь на имена такого "типа"

name='бла-бла-бла[]'


Это кто-то так учит делать? Для чего вообще? В чём рациональность такого рода имён?

Kolyaj 04.03.2011 09:34

ksa,
это чтобы в PHP массив приезжал.

l@pteff 04.03.2011 09:52

Manul_87,
addform.polz_name.val();

ksa 04.03.2011 10:42

Цитата:

Сообщение от Kolyaj
это чтобы в PHP массив приезжал.

Так он в реквесте и будет массивом если есть несколько элементов с одинаковым именем... Или в ПХП это не так?

Пример из csp

Отправляем данные
<form>
   <input name='test' />
   <input name='test' />
   <input name='test' />
</form>


Принимаем
<div>#(%request.Data("test",1))#</div>
<div>#(%request.Data("test",2))#</div>
<div>#(%request.Data("test",3))#</div>


Никакие скобки не нужны...

Kolyaj 04.03.2011 10:50

Цитата:

Сообщение от ksa
Или в ПХП это не так?

Угу.

ksa 04.03.2011 11:49

Ясно...


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