如何在 jquery.validate() 远程 class 规则中获取当前字段名称
how to get current field name in jquery.validate() remote class rule
我正在尝试重组在添加 classRule 时通过 jquery.validate() 远程发送的数据。
jQuery.validator.addClassRules("remote-validation", {
required: true,
remote: {
url : '/!/check/?ajax=true',
type:'post',
data: { table : $('body').attr('data-app'), id: $('input[name=id]').val(), field: $(this).val() }
}
});
只是试图提取用于简化服务器端处理的字段名称,但似乎无法找出如何提取正在验证的当前字段。
我的目标是生成以下内容
{ table : 'companies', id: '123', field: 'companyName }
非常感谢任何建议
我在任何地方都找不到它的文档,但我认为你可以为规则的参数值指定一个函数,如果你这样做,元素将作为第一个(也是唯一的参数)传递函数被调用。
如果这是真的,您可以尝试以下操作:
jQuery.validator.addClassRules("remote-validation", {
required: true,
remote: function(element) {
return {
url : '/!/check/?ajax=true',
type:'post',
data: {
table: $('body').attr('data-app'),
id: $('input[name=id]').val(),
field: $(element).val()
}
}
}
});
这 jsfiddle 表明它有效。在 fiddle 中,单击 "submit" 按钮,然后开始输入第一个输入。对于每次击键,都会进行 ajax 调用。
我正在尝试重组在添加 classRule 时通过 jquery.validate() 远程发送的数据。
jQuery.validator.addClassRules("remote-validation", {
required: true,
remote: {
url : '/!/check/?ajax=true',
type:'post',
data: { table : $('body').attr('data-app'), id: $('input[name=id]').val(), field: $(this).val() }
}
});
只是试图提取用于简化服务器端处理的字段名称,但似乎无法找出如何提取正在验证的当前字段。
我的目标是生成以下内容
{ table : 'companies', id: '123', field: 'companyName }
非常感谢任何建议
我在任何地方都找不到它的文档,但我认为你可以为规则的参数值指定一个函数,如果你这样做,元素将作为第一个(也是唯一的参数)传递函数被调用。
如果这是真的,您可以尝试以下操作:
jQuery.validator.addClassRules("remote-validation", {
required: true,
remote: function(element) {
return {
url : '/!/check/?ajax=true',
type:'post',
data: {
table: $('body').attr('data-app'),
id: $('input[name=id]').val(),
field: $(element).val()
}
}
}
});
这 jsfiddle 表明它有效。在 fiddle 中,单击 "submit" 按钮,然后开始输入第一个输入。对于每次击键,都会进行 ajax 调用。