2011-11-18 210 views
0

有没有比这更好的命令来检查表单是否存在,如果是这样提交?现在我正在使用:检查表单是否已经存在

if(document.forms[0])document.forms[0].submit() 

哪个工作,但是如果form [0]不存在,则会引发异常。我试图保持这种动态的意义,我不知道表单ID或名称是什么。

+0

如果问题出在JavaScript中 - 我甚至不会标记这个问题由于WP7 –

+0

document.forms [0]很脆弱,所以页面上可能会有多于一个的表单,并且如果html更改了您的JavaScript,则会被破坏。这就是为什么我建议在表单上使用ID。 – Jason

回答

5

为避免该异常,你可以这样做:

if (typeof document.forms[0] !== 'undefined') document.forms[0].submit(); 
+0

正是我需要的,谢谢! – Joe

0

你可以添加一个id到表单吗?你可以使用jQuery吗?

与ID,没有jQuery的

var form = document.getElementById('my-form'); 
if (form != null) { 
form.submit(); 
} 

与ID & jQuery的

if ($("#my-form").length == 1) { 
    $("#my-form").submit(); 
} 
1

您可以检查undefined

if(document.forms[0] != 'undefined') 
    document.forms[0].submit() 
1

如果你的唯一要求是检查表格是否存在,如果是这样,提交第一种形式,你可以使用:

if (document.forms.length) document.forms[0].submit();