Отправка форм

#javascript #html #forms

#javascript #HTML #формы

Вопрос:

у меня есть несколько форм на странице, генерируемых динамически. Я присваиваю уникальный идентификатор каждой форме, например form1, form2, form3 и т.д. Каждая форма содержит скрытое поле, в одном из которых указано имя идентификатора, а в следующем — название действия.

я делаю onclick="document.getElementById('form1').submit();" или любой другой идентификатор формы, который я хочу отправить. Проблема в том, что он не передает правильный идентификационный номер скрытого поля. В FF4 он передает последний идентификатор формы val, а в safari — первый идентификатор val?

Что я делаю не так? Возможно, это глупо и просто, но я этого не вижу.

Комментарии:

1. как насчет принятия некоторых предыдущих ответов и добавления некоторого HTML-кода?

2. @ITroubs, что, если бы он задавал сложные вопросы и так и не получил правильного ответа? Это поощряет подтверждения неправильного ответа и создает неверную информацию для будущих поисковиков.

3. Здравствуйте, что произойдет, если вы отправите форму таким способом: documents.forms[‘form1’].submit() ? Получите ли вы тот же результат?

4. Хорошо, я не знаю, каков ответ, но я нашел, как этого избежать. Это не работало там, где ссылка была на элементе карты. Я избежал отображения на изображении и сделал это как <a>, и все работает нормально.

Ответ №1:

onClick = document.form1.submit();

Ответ №2:

«несколько форм»? Итак, у вас есть что-то вроде

 <form ...>
   <input type="hidden" name="id" value="1" >
   <input type="submit">
</form>

<form ...>
   <input type="hidden" name="id" value="2" >
   <input type="submit">
</form>

etc...
  

Если это так, то то, что вы видите, является ожидаемым поведением. При отправке формы будут отправлены только поля, содержащиеся в одном и том же <form> ... </form> наборе тегов.