表单 – 如何在angularjs指令中添加验证属性

表单 – 如何在angularjs指令中添加验证属性,第1张

概述我正在尝试编写一个角度指令,它将验证属性添加到标签中,但它似乎不起作用.这是我的演示您将注意到,如果删除第二个输入框中的文本,则“有效”仍然为真,但如果删除第一个输入框中的文本,则为“false”. http://plnkr.co/edit/Rr81dGOd2Zvio1cLYW8D?p=preview 这是我的指令: angular.module('demo', []).directive('m 我正在尝试编写一个角度指令,它将验证属性添加到标签中,但它似乎不起作用.这是我的演示您将注意到,如果删除第二个输入框中的文本,则“有效”仍然为真,但如果删除第一个输入框中的文本,则为“false”.

http://plnkr.co/edit/Rr81dGOd2Zvio1cLYW8D?p=preview

这是我的指令:

angular.module('demo',[]).directive('MetaValIDate',function () {    return {        restrict: 'A',link: function (scope,element,attrs) {            element.attr("required",true);        }    };});

我猜我只是想念一些简单的东西.

解决方法 表单验证的所有规则都将在表单的编译阶段读取,因此,在对子节点进行更改后,需要重新编译form指令(形式为AngularJs中的自定义指令).但只做一次,避免无限循环(您的指令的“链接”函数将在表单的编译后再次调用).
angular.module('demo',function ($compile) {    return {        restrict: 'A',attrs) {          if (!element.attr('required')){            element.attr("required",true);            $compile(element[0].form)(scope);          }        }    };});

工作空档:http://plnkr.co/edit/AB6extu46W4gFIHk0hIl?p=preview

总结

以上是内存溢出为你收集整理的表单 – 如何在angularjs指令中添加验证属性全部内容,希望文章能够帮你解决表单 – 如何在angularjs指令中添加验证属性所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1089649.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存