我需要从指令添加输入验证。
我试过
return{
restrict: 'A',
link: function(scope, elem, attrs){
attrs.$set('required', 'required');
}
}
我可以在dom上看到这个属性但是表单没有验证它。 我正在使用下面提交的提交来验证表单。
<input type="submit" value="submit" ng-disabled="myForm.$invalid">
答案 0 :(得分:1)
您的代码不起作用的主要原因是,一旦添加了属性,您就不再在元素上使用$ compile。
Angular需要重新解析元素并在将其添加为属性后运行'ng-required'指令,否则angular不知道它,因为DOM已经被渲染。
另一件事是你可以在编译阶段而不是链接阶段这样做,因为我可以看到你没有使用范围内的任何东西。
以下是您可以做的事情:
{{1}}
您可以在this SO answer
中阅读更多内容答案 1 :(得分:0)
如果您没有为输入验证分配模型,那么就会变得难以理解。我建议添加一个模型并重读以下信息。