在AngularJS中定义自定义Parsley验证时遇到问题

时间:2019-04-23 09:50:42

标签: node.js angularjs laravel parsley

我继承了一个使用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调用)

0 个答案:

没有答案