我使用以下代码将事件附加到表单的提交按钮:
$('form.manage-users-form').on('click','button.special',function() {
if ($(this).hasClass('selected')){
console.log('This user is already special');
} else {
$(this).parent().find('button').removeClass('selected');
$(this).addClass('selected');
var user_id = $(this).closest("form[id]").val();
console.log('This user is now special');
console.log(user_id);
}
return false;
});
您可以看到,我也在尝试获取表单的 id,但是当我检查控制台时,我得到(空字符串)
。为什么会这样以及如何正确获取表单的 ID?
最佳答案
你尝试过吗?
var user_id = $(this).closest("form").attr('id');
元素的id是一个属性,您可以使用.attr()提取任何属性(包括id)。
.val() 用于提取元素的值,这在表单中没有任何意义。
更多信息:
关于jquery - 获取表单的ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9685177/