【问题标题】:How to disable <select> when there are no options returned from filter当过滤器没有返回选项时如何禁用 <select>
【发布时间】:2014-06-13 23:12:16
【问题描述】:

我有这样的事情:

HTML

<select ng-model="dataValidatorNewResource.name" 
        ng-options="dv.name for dv in dataValidators | filter:filterDataValidator">
</select>

我想知道当过滤器根本没有返回任何选项时如何禁用整个选择。

我试过这个:

JS

      $scope.enableAddDataValidatorForm = true;
      $scope.filterDataValidator = function(v) {
        var found = false;

        // Do the filtering stuff...

        $scope.enableAddDataValidatorForm = !found; 
        return !found;
      }

然后将ng-disabled="!enableAddDataValidatorForm" 添加到&lt;select&gt;,但效果不佳。此外,过滤器经常被调用,我想知道是否有更直接的方法来做我想做的事。

【问题讨论】:

    标签: angularjs select filter options disabled-control


    【解决方案1】:

    当过滤器根本没有返回任何选项时,您想禁用select。所以就去做吧!

    <select
        ng-model="dataValidatorNewResource.name" 
        ng-options="dv.name for dv in dataValidators | filter:filterDataValidator"
        ng-disabled="(dataValidators | filter:filterDataValidator).length === 0"
    >
    </select>
    

    【讨论】:

      猜你喜欢
      • 2014-08-03
      • 2014-07-09
      • 1970-01-01
      • 2017-01-15
      • 1970-01-01
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多