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

前端之家收集整理的这篇文章主要介绍了表单 – 如何在angularjs指令中添加验证属性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试编写一个角度指令,它将验证属性添加标签中,但它似乎不起作用.这是我的演示您将注意到,如果删除第二个输入框中的文本,则“有效”仍然为真,但如果删除第一个输入框中的文本,则为“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

原文链接:https://www.f2er.com/html/230088.html

猜你在找的HTML相关文章