如果myInput == 3,myForm变得无效,怎么在angularjs中做什么?
https://www.w3schools.com/code/tryit.asp?filename=FHEQPT5XNZCI
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<body ng-app="">
<form name="myForm">
<input type="text" name="myInput" ng-model="myInput" ng-required='!myInput==3'>
</form>
<h1>{{myForm.myInput.$valid}}</h1>
</body>
</html>
答案 0 :(得分:3)
!myInput==3
此表达式每次都会返回false
,因为!myInput
返回的布尔值永远不会等于3
。
将其更改为:
myInput != 3
这实际上会将myInput
与3
进行比较。
修改强>:
要针对特定值进行验证,最简单的方法是使用ng-pattern
指令。如果要使输入有效,如果它包含3,请将ng-required
替换为:
required ng-pattern="/^3$/"
这将根据需要进行输入,并且只有在包含值3
时才会生效。