【问题标题】:How to AngularJS ng-disabled directive works in Boostrap-select (Silvio Moreto)?AngularJS ng-disabled 指令如何在 Bootstrap-select (Silvio Moreto) 中工作?
【发布时间】:2015-09-25 03:05:09
【问题描述】:

AngularJS 1.0.7 ng-disabled 指令是否与 Silvio Moreto boostrap-select 插件一起使用?

我有这个代码:

disableLicenseType={{disableLicenseType}}
<select bs-select  name="licenseType" class="show-tick" data-width="320px" ng-model="boat.licenseType.id" ng-options="licenseType.id as (licenseType.name | translate) for licenseType in licenseTypes" ng-required="control || !createBoatPoliciesForm.licenseType.$pristine" ng-disabled="disableLicenseType">
    <option value="">{{'REQUIRED_LICENSE_PLACEHOLDER' | translate}}</option>
</select>

如果 disableLicenseType 变量初始化为 true,则它被禁用,如果它首先初始化为 false,则不会被禁用。但是,第一次之后,当我更改 disableLicenseType 值时,我可以看到(使用 Google 工具检查)禁用属性被包含或删除,但是选择组件不再动态更改。

【问题讨论】:

    标签: angularjs bootstrap-select


    【解决方案1】:

    据我所知,在“ng-disabled”中的表达式值更改后,您必须刷新选择控件。我这样做了,它奏效了。每当disableLicenseType 更改时,您都可以调用,例如:

    $('.selectpicker').selectpicker('refresh');
    

    此命令行是用 JQuery 编写的,并为每个具有“selectpicker”类的元素调用 selectpicker() 函数。我不知道你为什么使用这个bs-select 元素而不是class="selectpicker",但我相信你明白了。

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多