【发布时间】:2014-07-11 13:50:51
【问题描述】:
通过指令,我在模糊的输入字段中添加前导零,这使该字段有效。我遇到的问题是该字段仍然无效。
这样的事情可能会奏效
AngularJS: How do I manually set input to $valid in controller?
但我认为还必须检查表单。
有什么简单的方法可以让它工作吗?
编辑:
这是指令
.directive('leadingZero', function() {
return {
restrict: 'A',
link : function (scope, elem, attr) {
elem.bind('blur', function() {
var leadingZero = parseInt(attr["leadingZero"], 10);
var len = parseInt(elem[0].value.length, 10);
if(len < leadingZero) {
while(parseInt(elem[0].value.length, 10) < leadingZero) {
elem[0].value = '0'+elem[0].value;
};
};
});
}
}
})
你会这样使用它:
<input name="month" leading-zero="2" type="text" />
这会将“5”变为“05”
【问题讨论】:
-
你能发布你的指令和html吗?
-
没有任何代码,我们无能为力。你在应用范围吗?
标签: javascript angularjs validation