检查input框是否为空
我怎样才能检查给定的input控件是否为空? 我知道这个领域有一个$pristine
属性,它告诉我们如果一个给定的领域最初是空的,但是如果某个人填满了领域并且再次把整个内容全部抽出来呢?
我认为上面的function是必要的,因为它告诉用户该字段是必需的重要。
任何想法将不胜感激!
非常简单 :
<input ng-model="somefield"> <span ng-show="!somefield.length">Please enter something!</span> <span ng-show="somefield.length">Good boy!</span>
你也可以使用ng-hide="somefield.length"
而不是ng-show="!somefield.length"
如果那样的话对你来说更自然。
更好的select可能是真正利用Angular的表单能力 :
<form name="myform"> <input name="myfield" ng-model="somefield" ng-minlength="5" required> <span ng-show="myform.myfield.$error.required">Please enter something!</span> <span ng-show="!myform.myfield.$error.required">Good boy!</span> </form>
这里更新了Plnkr。
即使你不需要测量string的长度。 一个 ! 操作员可以为您解决所有问题。 请记住:!(空string)= true!(某个string)= false
所以你可以写:
<input ng-model="somefield"> <span ng-show="!somefield">Sorry, the field is empty!</span> <span ng-hide="!somefield">Thanks. Successfully validated!</span>
另一种方法是使用正则expression式,如下所示,您可以使用空的正则expression式模式,并使用ng-pattern实现相同的效果
HTML:
<body ng-app="app" ng-controller="formController"> <form name="myform"> <input name="myfield" ng-model="somefield" ng-minlength="5" ng-pattern="mypattern" required> <span ng-show="myform.myfield.$error.pattern">Please enter!</span> <span ng-show="!myform.myfield.$error.pattern">great!</span> </form>
控制器:@formController:
var App = angular.module('app', []); App.controller('formController', function ($scope) { $scope.mypattern = /^\s*$/g; });
如果input字段不为空,则自动检查checkbox。
<md-content> <md-checkbox ng-checked="myField.length"> Other </md-checkbox> <input ng-model="myField" placeholder="Please Specify" type="text"> </md-content>
- 如何使用HTML内容创buildAngularJS UI引导popup窗口?
- 在select匹配上使用angular ui-bootstrap typeaheadcallback?
- 如何在AngularJS中使用按键事件?
- 响应式下拉导航栏与angular度UI引导(完成在正确的angular度types的方式)
- 如何使用angular度检测浏览器?
- angularjs:防止Bootstrap莫代尔消失,当点击外面或按逃生?
- ui-bootstrap-tpls.min.js和ui-bootstrap.min.js有什么区别?
- angularjs在控制器之间共享数据configuration
- 如何在ui-router中使用ui-sref传递参数给控制器