加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

AngularJs ng-disabled在IE 9中无法解决任何问题?

发布时间:2020-12-17 17:38:52 所属栏目:安全 来源:网络整理
导读:我有使用ng-disabled AngularJs指令的问题,它在chrome中工作得很好,但它在IE 9中不起作用,任何让它工作的解决方案都将受到赞赏. main.html中 select kendo-drop-down-list k-data-text-field="'text'" k-option-label="'Select'" k-data-value-field="'id'"
我有使用ng-disabled AngularJs指令的问题,它在chrome中工作得很好,但它在IE 9中不起作用,任何让它工作的解决方案都将受到赞赏.

main.html中

<select kendo-drop-down-list k-data-text-field="'text'"
    k-option-label="'Select'" k-data-value-field="'id'"
    k-data-source="assessmentOptions" name="riskAssesLevelLookupCode"
    required id="riskAssesLevelLookupCode"
    maxlength="256"
    ng-attr-disabled="{{disableAssessmentType? 'disabled': ''}}"
    ng-model="riskAssessmentDTO.riskAssesLevelLookupCode"
></select>

解决方法

我目前在ng-disabled方面遇到了同样的问题.不幸的是,我能想到的唯一解决方法是处理控制器中ng-disabled的逻辑.所以在你的情况下:

<select kendo-drop-down-list k-data-text-field="'text'"
    k-option-label="'Select'" k-data-value-field="'id'"
    k-data-source="assessmentOptions" name="riskAssesLevelLookupCode"
    Required id="riskAssesLevelLookupCode"
    maxlength="256"
    ng-attr-disabled="checkForDisabled()"
    ng-model="riskAssessmentDTO.riskAssesLevelLookupCode">
</select>

在控制器中:

checkForDisabled() {
    if(disableAssessmentType) {
       return "disabled";
    } else {
       return "";
    }
}

然后,这将不会保证IE9上的正确行为.在我的情况下,我试图避免ng-click事件的功能.所以我在设置禁用时将标志设置为false,并根据该标志调用该函数.像这样的东西:

<button ng-click="callMethod()" ng-disabled="checkDisabled()">
  Click me if Im enabled
</button>

控制器:

checkDisabled() {
   // Let's say it's disabled
   $scope.isDisabled = false; // set a global flag
   return false;
}

callMethod() {
   if($scope.isDisabled) {
        //disabled,do nothing maybe handle an error?
   } else {
        //functionality when it's enabled
   }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读