#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>
наборе тегов.