AngularJS 进阶(二) 解决form验证时ng-repeat不能先解析name值问题
1.自定义指令
.directive("dyName", [ function() { return { require: "ngModel", link: function(scope, elm, iAttrs, ngModelCtr) { ngModelCtr.$name = scope.$eval(iAttrs.dyName) var formController = elm.controller(‘form‘) || { $addControl: angular.noop }; formController.$addControl(ngModelCtr); scope.$on(‘$destroy‘, function() { formController.$removeControl(ngModelCtr); }); } }; } ])
2.引入指令
<div ng-repeat="item in demo.fields"> <div class="control-group"> <label class="control-label"> : </label> <div class="controls"> <input type="number" dy-name="item.field" ng-model="demo.data[item.field]" min="10" max="500" ng-required="true"/> </div> </div> </div>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。