我想警告用户,如果触摸表单字段并将其留为空。我可以检查是否使用$pristine
接触空字段。但是,如果我预紧时间从$scope
形成数据,则$pristine
不起作用。另外,我不想使用required
参数,我只想向ng-class
注入警告风格。
<div ng-class="{'has-warning': !form.name.$pristine}">
<input type="text" name="name" ng-model="people.name">
</div>
此处描述的ngmodel上设置了几种状态属性。您可能需要考虑使用form.name。$ dirty或form.name。$ thine。
edit
尝试使用:
ng-class="{'has-warning': form.name.$touched && people.name.length === 0}"
您可以尝试使用ngfocus:
在焦点事件上指定自定义行为。
https://docs.angularjs.org/api/ng/directive/ngfocus
<div ng-class="{'has-warning': !form.name.isValid}">
<input type="text" name="name" ng-model="people.name" ng-focus="form.name.isValid = people.name ? true : false">
</div>
我建议使用:
form.name.$touched && form.name.$invalid
它应该工作