this.form
和document.forms (document["forms"])
之间是否存在差异,或者它们是否相似?
这是我为测试差异而编写的代码。
<form name="myForm" id="myForm">
<input type="text" name="haha" id="myForm" value="laughable" onclick="alert(this.form.haha.value)" />
</form>
alert(document.forms.myForm.haha.value);
它们都会产生同样的结果。
答案 0 :(得分:9)
this.form
将为您提供表单元素的表单。 (this
是表单元素)
包含表单元素,如果此元素是表单。
document.forms
将为您提供文档中的所有表单(如果它受支持!)
forms返回当前文档中表单元素的集合(HTMLCollection)。
更好地使用document.getElementById(id)
var form = document.getElementById(formId);
答案 1 :(得分:-1)
this.form
将返回此表单的属性,如上所述,无论"this"
是什么。
"this"
可以是任何东西,例如。一个div,所以可能没有表单属性。
如果"this"
恰好引用了文档,则this.form
将返回与document.form
完全相同的内容。但除此之外,不要指望它。