jQuerys prop()方法返回错误的id

jQuerys prop()方法返回错误的id,jquery,forms,input,prop,Jquery,Forms,Input,Prop,当我在表单中有name=“id”的输入时,prop('id')方法返回输入元素,而不是作为字符串的id: HTML 谁能给我解释一下吗 我准备了一把小提琴: 这是因为您已将输入命名为id,并且输入、选择和其他“表单元素”的名称或id作为表单属性附加到父表单,以便于访问,因此form.id是输入,而不是元素id 不要命名输入的id或您可能想要访问的任何其他属性,问题就解决了 由此导致的奇怪代码示例 var form=window.test;//请注意,元素ID也附加到全局范围 form.id.

当我在表单中有name=“id”的输入时,prop('id')方法返回输入元素,而不是作为字符串的id:

HTML

谁能给我解释一下吗

我准备了一把小提琴:


这是因为您已将输入命名为
id
,并且输入、选择和其他“表单元素”的名称或id作为表单属性附加到父表单,以便于访问,因此
form.id
是输入,而不是元素id

不要命名输入的id或您可能想要访问的任何其他属性,问题就解决了

由此导致的奇怪代码示例

var form=window.test;//请注意,元素ID也附加到全局范围
form.id.value='test';
form.value.value='测试更多';
form.selectedIndex.value='2'

1.
2.
3.
<form id="testform">
    <input name="id">
</form>
var $form = $('#testform');

var wrongId = $form.prop('id');
var correctId = $form.attr('id');

alert(wrongId); // alerts the html input element
alert(correctId); // alerts the id testform