javascript - 如何在指令中设置 ng-disabled

标签 javascript angularjs

我的指令有

link: function ($scope, $elm, $attrs) {
    var status = $scope.item.status
    if (status) {
        var statusName = status.name,
            item = $scope.item;
        if (statusName === 'USED') {
            $attrs.$set('ng-disabled', true); // this doesn't work
        } else {
            $elm.attr('ng-disabled', false);
        }
    }
}

所以,我的问题是:

如何使用此指令将 ng-disabled 应用于元素?

最佳答案

if (statusName === 'USED') {
    $attrs.$set('disabled', 'disabled');
} else {
    $elm.removeAttr('disabled');
}

为什么要调用 ng-disable?您已经自己评估过一次条件,因此让 ng-disable 再次评估它是多余的。

关于javascript - 如何在指令中设置 ng-disabled,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21804311/

相关文章:

javascript - 无法弄清楚如何对谷歌应用引擎执行 XMLHttpRequest

javascript - 计算数组中 date() 条目之间的平均差异(以毫秒为单位)

javascript - 使用 AngularJS 在客户端初始化 Braintree 支付?

javascript - 仅在 AngularJS 中禁用左键单击焦点事件

javascript - 如何调用存储为字符串的匿名函数

javascript - Angular Post 数组导致数据库中全部为 NULL

javascript - Angular ui -router 页面浏览器刷新显示空值?如何持久保存数据?

javascript - 使用 Bootstrap 将所有对象对齐在 div 的中间

javascript - 如何将多次出现的字符串变为一次?

java - 为 javascript/java 使用不同的 ide