在填写DOM字段之前提交表单?

时间:2011-12-07 11:06:22

标签: javascript forms

在JavaScript中,我使用它来填充一个名为“XML”的输入字段,然后提交表单:

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

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

XMLobject是一个包含XML文档的对象。使用ToString(),您可以将整个XML作为字符串。

现在一些使用IE8的客户抱怨说有时字段XML的值是空的。

在输入字段写入之前,表单是否已经提交?

或者在这种情况下,submitbuttonXML.ToString()准备工作之前点击了{{1}}是绝对不可能的吗?

2 个答案:

答案 0 :(得分:0)

@robertc说的是真的,您的表单是在代码执行之前提交的,还是可以在其他事件/时刻提交?

因此,您可以更改为在onsubmit事件中调用您的函数,这将更有意义。然后,您将不再需要在提交按钮上调用click(),只需:

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

你在哪里称这个功能?不在提交按钮上,对吗?因为如果在提交按钮上调用它,我可以在通过该功能之前提交您的表单。

只是一些假设......

答案 1 :(得分:0)

可能的情况是XMLObject.ToString()有时会失败或产生空结果。表单也可能以某种方式提交,而不会执行代码。如果您尝试通过处理表单的onsubmit事件来执行代码,那么您可以确保无论您的代码将在表单发送到服务之前执行什么。