当我将ng-pattern
插入div时,我在ng-pattern
变量中有一个输入标记
式:
.from_fields {
transition: all linear 0.5s;
background: transparent;
}
.from_fields.ng-invalid {
color: white;
background: red;
}
脚本
$scope.input='<input type="text" ng-pattern="/^[0-9]{1,7}$/" class="from_fields">';
angular.element(document.getElementById('test')).html($scope.input);
有人可以帮忙吗?
答案 0 :(得分:0)
您尝试输入的字符串需要针对angular进行编译,以便将其置于监视列表中并评估任何ng属性。
现在ng-pattern是一个常规的自定义数据属性,对于角度
没有任何意义如果你不想在角度控制器中绑定,只需删除ng -
离开
'<input type="text" pattern="^[0-9]{1,7}$" class="from_fields">';
请注意,pattern属性不需要斜杠
否则你必须在控制器中导入$ compile服务
并在给定$ scope变量
的情况下编译字符串var input = '<input type="text" ng-pattern="^[0-9]{1,7}$" class="from_fields">';
var compiled_input = $compile(input)($scope)
并将其附加到文档
angular.element(<selector>).append(input);