Angularjs 带有验证包装器的指令
我正在尝试创建一个指令,该指令将具有完整的引导表单字段布局以及表单验证消息等,并从javascript模型定义控制html,我认为这将很简单,但现在看起来不是这样 目前,我为每个字段编写了以下模板:Angularjs 带有验证包装器的指令,angularjs,validation,angularjs-directive,Angularjs,Validation,Angularjs Directive,我正在尝试创建一个指令,该指令将具有完整的引导表单字段布局以及表单验证消息等,并从javascript模型定义控制html,我认为这将很简单,但现在看起来不是这样 目前,我为每个字段编写了以下模板: '<div ng-form="myform">' + '<div class="control-group" class="{{options.class}}" >' + '<div class="control-label">{{
'<div ng-form="myform">' +
'<div class="control-group" class="{{options.class}}" >' +
'<div class="control-label">{{options.label}} {{options.required ? "*" : ""}} </div>' +
'<div class="controls">';
html += '<input type="number" name="myfield" placeholder="{{options.placeholder}}" ng-required="options.required" ' +
'ng-pattern="{{options.pattern}}" ng-minlength="{{options.minlength}}" ng-maxlength="{{options.maxlength}}" ' +
'ng-readonly="options.readonly" autofocus="options.autofocus" ng-change="ngChange" autocomplete="off" data-ng-model="ngModel"/>'
html += '<div class="field-validation-error" data-ng-show="myform.myfield.$invalid && myform.myfield.$dirty"> ' +
'<div data-ng-show="myform.myfield.$error.required ">{{options.label}} is required!!!</div>' +
'<div data-ng-show="myform.myfield.$error.pattern">{{options.patternMessage}}</div>' +
'<div data-ng-show="myform.myfield.$error.minlength">{{options.label}} should have atleast {{options.minlength}} character/s.</div>' +
'<div data-ng-show="myform.myfield.$error.maxlength">{{options.label}} can have maximum {{options.maxlength}} character/s.</div>' +
'<div data-ng-show="myform.myfield.$error.min">{{options.label}} cannot have value less than {{options.min}}</div>' +
'<div data-ng-show="myform.myfield.$error.max">{{options.label}} cannot have value greater than {{options.max}}</div>' +
'</div>';
因此,将此对象传递给指令,然后根据字段详细信息生成模板应该是可行的,但无法实现最终结果。我尝试过各种方法
注:我看了Formy angular,但它也有输入上没有ng变化等问题。是否有其他类似的解决方案。您需要编译该元素
$compile(element)(scope)
目前,由于您尚未编译angular,因此您不知道您在dom中所做的更改。Plnker似乎不起作用:(.是我吗?Plunks正在工作..刚刚确认。)
$compile(element)(scope)