我在一页上有 2 个表格。我试图使用 jQuery 从第一个表单中获取名称字段的值,但 jQuery 始终从第二个表单中获取名称值。代码如下所示:
$('#registration-form').each(function(){
var $this = $(this);
$this.submit(function (event) {
var firstName = $(this).find('input[name="firstName"]').val();
console.log(firstName);
});
});
为什么这段代码不起作用?非常感谢您的帮助!
最佳答案
首先,您通过 id
属性进行选择,因此不能有多个元素具有相同的 id
。这就是为什么只找到一个。在这种情况下,each() 也是多余的。
如果您想对元素进行分组,请使用 class
,但请注意 each()
仍然是多余的,因为 jQuery 会在内部循环遍历每个选定的元素,因此您可以只需直接附加 submit
事件处理程序,如下所示:
$('.reg-form').submit(function (e) {
var firstName = $(this).find('input[name="firstName"]').val();
console.log(firstName);
});
关于javascript - 一页上有2个相似的表单,$(this).find();正在从最后一个表单中获取值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41096569/