我必须使用指令ng-required,但我不能硬编码真或假。我需要在变量中使用它,但angular不能识别“true”。
<div ng-app ng-init="test=true">
<div>
both have ng-required="true"
<br/>
one as hardcoded string literal, one via a variable
<br/>
Inspect them, one is not required!
</div>
<form name="myForm">
<input type="text" ng-required="{{test}}" />
<input type="text" ng-required="true" />
</form>
</div>
我怎样才能使这个工作?
答案 0 :(得分:12)
<input type="text" ng-required="{{test}}" />
您无需在此处插入 test 。由于您要评估test的值,只需删除花括号即可。它可以正常工作。
答案 1 :(得分:5)
昨天刚发现你可以使用与ng-class相同模式的ng-required:
<input type = "text" ng-required = "{true : 'true', false : 'false'}[test]" />
答案 2 :(得分:1)
我个人使用三元运算符进入这些指令,它运行良好。对于ng-required:
<input type="text" ng-required="(user.name == '' ? 'true' : 'false')" ng-model="user.nickname"/>
在此示例中,如果未填写用户的名称字段,则昵称字段将变为REQUIRED。
答案 3 :(得分:0)
由于某种原因,两个答案都不起作用,只需使用
ng-required="expired"
已过期成为变量。