众所周知,在angular中ngmodel为动态双向绑定,存在两种方式。
例如,
方式一:
在html中,
<input type="text" ng-model="searchtext" /> <button ng-click="check(searchtext)">check!</button> {{ searchtext }}
在controller中
$scope.check = function (searchtext) { console.log(searchtext); }
方式二:
引用stackoverflow的一句话,
“if you use ng-model, you have to have a dot in there.” make your model point to an object.property and you'll be good to go.
在html中,
<input ng-model="formdata.searchtext"/> <button ng-click="check()">check!</button>
在controller中,
$scope.formdata = {}; $scope.check = function () { console.log($scope.formdata.searchtext.$modelvalue); }
但是我们常常会对ngmodel当中的值进行验证,例如,
<input type="password" pattern="[0-9]*" placeholder="请输入6位新密码" ng-model="password.new_password" ng-blur="validatelength()">
<input type="password" ng-model="password.new_password" ng-keyup="compare(password)" name="repassword" ng-pattern="/^[0-9]{1,6}$/" />
发现ngmodel当中的password.new_password不能实时绑定到controller中,原因为ngmodel的值并没有符合pattern的规则。若符合规则,则正常绑定传递。
以上这篇angularjs之ngmodel中的值验证绑定方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。
您可能感兴趣的文章:
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
网友评论