Форма отправляется до заполнения поля DOM? - PullRequest
0 голосов
/ 07 декабря 2011

В JavaScript я использую это для заполнения поля ввода с именем «XML», а затем отправляю форму:

document.clientform.XML.value = XMLobject.ToString();

submitbutton=document.getElementById('submitbutton');
submitbutton.click();

XMLobject - это объект, который содержит документ XML.С ToString() вы получаете весь XML в виде строки.

Теперь некоторые клиенты, использующие IE8, жалуются, что иногда значение поля XML пусто.

Возможно ли, что форма уже была отправлена ​​до того, как было написано поле ввода?

Или абсолютно невозможно в этой ситуации нажать на submitbutton до того, как готовоего работа?

Ответы [ 2 ]

0 голосов
/ 07 декабря 2011

Вероятная возможность состоит в том, что XMLObject.ToString () иногда дает сбой или выдает пустой результат. Также возможно, что форма каким-то образом отправлена ​​без выполнения кода. Если вы попытаетесь выполнить свой код, обработав событие onsubmit форм, вы сможете убедиться, что какой бы код вы ни выполняли, перед отправкой формы на подачу.

0 голосов
/ 07 декабря 2011

То, что @robertc сказал, верно, ваша форма отправляется до того, как вы выполняете код, или она может быть отправлена ​​в другое событие / момент?

Так что вы можете перейти к вызову своей функции на событии onsubmit, это будет иметь больше смысла. Тогда вам больше не нужно будет звонить click() на кнопку отправки, просто так:

document.clientform.XML.value = XMLobject.ToString();

Где вы вызываете эту функцию? Не на кнопку отправки, верно? Потому что, если она вызывается на кнопке отправки, я могу отправить вашу форму до прохождения через функцию.

Только некоторые гипотезы ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...