Angular.js中无法根据复选框勾选状态控制下拉框禁用问题求助
解决AngularJS复选框控制下拉框禁用状态的问题
嘿,我帮你排查出问题所在啦!你的代码里有两个小细节出错了,导致下拉框的禁用逻辑没按预期运行:
- 指令拼写错误:你把AngularJS的禁用指令写成了
ng-disbaled,正确的名称是ng-disabled(注意是abled不是aled),拼写错了Angular就没法识别这个指令了。 - 模板中无需加$scope前缀:在AngularJS的模板里,直接使用绑定的模型变量名就行,不用额外加
$scope.,所以原来的!$scope.ochkpancard && !$scope.ochkadhar应该改成!ochkpancard && !ochkadhar。
下面是修正后的完整代码:
<div class="col-md-4"> <div class="form-group"> <label>Status</label> <select class="form-control" name="status" id="status" ng-model="status" ng-disabled="!ochkpancard && !ochkadhar"> <option value="">Select Status</option> <option value="1">Yes</option> <option value="0">No</option> </select> </div> </div> <div class="col-md-5"> <div class="form-group"> <label><input id="ochkpancard" type="checkbox" ng-model="ochkpancard" /> Pancard</label> </div> </div> <div class="col-md-5"> <div class="form-group"> <label><input id="ochkadhar" type="checkbox" ng-model="ochkadhar" /> Aadhar Card</label> </div> </div>
现在这个逻辑就完全符合你的需求了:当两个复选框都没勾选时,!ochkpancard && !ochkadhar的结果是true,下拉框保持禁用;只要任意一个复选框被勾选,这个表达式就会变成false,下拉框自动启用。
内容的提问来源于stack exchange,提问作者user5443928
相关产品推荐
相关产品推荐

