我继承了一个使用Laravel和Node.js运行angularjs应用程序的项目(对吗?)
该应用程序大量使用了欧芹验证器,但我需要一个可以根据预先输入的列表进行验证的
。我似乎无法弄清楚该验证码的插入位置。它不会在我坚持的任何地方运行。我可以从控制台访问window.Parsley,它表明我已经注册了自定义验证器。当我向自定义验证声明发送垃圾邮件以尝试将其提取时,我收到一条警告,称它已经被删除,但是不会在我的表单上运行。
我的想法是,在使用API调用填充数据对象之后,我需要立即添加自定义验证程序代码,但这不起作用。
只是想让示例首先生效
<input type="text" autocomplete="off" class="form-control" placeholder="Search Client" data-ng-model="addexpense.model.client" uib-typeahead="clientObj.name as clientObj.name for clientObj in addexpense.getClientList($viewValue)" data-parsley-palindrome="" uib-typeahead-min-length="2">
和
window.Parsley.addValidator('palindrome', {
validateString: function(value) {
console.log("whee")
return value.split('').reverse().join('') === value;
},
messages: {
en: 'This string is not the reverse of itself',
fr: "Cette valeur n'est pas l'inverse d'elle même."
}
});
我希望验证器在我附加的字段上运行,但是尽管已在window.Parsley中注册,但它根本没有运行。我怀疑在AngularJS中有一些特殊的地方声明自定义验证器,但是我担心需要将验证列表传递给它(尽管我想我可以从任何可以使验证器工作的地方运行另一个API调用)