You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:46:26