2012-04-27 100 views
22

我有一个奇怪的问题。我想在元素上触发一个jquery-valdation errormessage,即使它是有效的。jQuery验证触发器错误信息

场景: 我有一个大表。其中一个输入是PersonalId。输入该PersonalId是可选的。 除了输入我有一个正常的按钮(不是提交按钮)。如果你点击(从Ajax获取信息)并且PersonalId字段为空,我想触发该错误消息。

这可能与jQuery验证或我需要创建我自己的功能?

+0

可能的重复[手动设置不显眼的验证错误的文本框](https://stackoverflow.com/questions/7380278/manually-set-unobtrusive-validation-error-on-a-textbox) – KyleMit 2017-11-20 23:05:45

回答

45

这是可能的与jQuery验证或我需要创建我自己的功能?

这两种,有点。您可以使用showErrors函数手动显示表单上的错误,但由于您不希望这是一个在您提交提交表单时启用的规则,因此您必须自行检查表单中的值输入。

喜欢的东西:

var $validator = $("#myform").validate(); 
$("#checkid").click(function() { 
    var errors; 

    if (!$("#personalid").val()) { 
     /* Build up errors object, name of input and error message: */ 
     errors = { personalid: "Please enter an ID to check" }; 
     /* Show errors on the form */ 
     $validator.showErrors(errors);    
    }   
}); 

例子:http://jsfiddle.net/andrewwhitaker/XjZer/

注意,形式仍然将提交如果没有在personalid领域。

+0

我有同样的问题但我怎样才能触发多维名称的错误。我解决不了这个问题。例如 'field =“email”; var element =“data [User] [”+ field +“]”; errors = {element:field_error}; $ validator.showErrors(错误);' – Parixit 2015-11-30 06:32:35