我有一个表格,您必须在其中输入房屋的属性,例如姓名、号码等。 在相同的表格中,他们会提到您必须输入这些属性的房屋数量。根据房屋数量,我为每个房屋生成这样的输入字段。
var text1 = '<input type="text" min="1" id="houseNo[' + i + ']" class="Houseno form-control" name="projectConfigurationDetails[' + i + '].houseNo">';
之后,当我尝试读取这样的值时
$('#houseNo[0]').attr('name');
它给了我undefined
经过一些尝试和错误后,我们更改了 id
至"houseNo' + i + '"
删除方括号。然后
$('#houseNo0').attr('name');
这提供了完美的值(value)。方括号使 Jquery 认为这是某种选择器模式,但我们提到 #
这就是id
.
如果我遗漏了一些东西,请教育我。
最佳答案
由于[]
是元字符,因此需要使用\\
$('#houseNo\\[0\\]').attr('name');
To use any of the meta-characters ( such as !"#$%&'()*+,./:;<=>?@[]^`{|}~ ) as a literal part of a name, it must be escaped with with two backslashes: \\.
关于javascript - 为什么 Jquery 无法识别 id 为 "houseNumber[x]"的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34223391/