我在页面中有多个表单。我只需要提交所提交表单的输入子项。
这是我的代码(当然它不起作用)。
$('form.modal-form').on('submit',function(e) {
e.preventDefault();
var form_errors = 0;
$(this).children('input.required-field').each(function(index)
{
[....]
});
});
非常感谢
答案 0 :(得分:2)
您需要使用$.fn.find代替$.fn.children,而{{3}}只能获得直接子女:
$(this).find('input.required-field').each(function(index) {
// ...
});
答案 1 :(得分:1)
您可以选择context
内的元素。这是jQuery函数选择器之后的第二个参数。在那里传递this
让jQuery只在这个context
中搜索您的选择器,这将只为您提供所需的元素...
$('form.modal-form').on('submit', function(e) {
e.preventDefault();
$('input.required-field', this).each(function() {
// do your work
});
});
您使用过的children
可能无法在此处运行,因为此功能只能为您的选择器搜索更深的一个节点。您可以从.children()
切换到.find()
,应该做些什么。
但我仍然希望使用上下文选择器!