使用ng-disabled中项目的数据键

时间:2017-11-09 11:54:44

标签: javascript html angularjs

我想在我的HTML中设置data-key,在这种情况下myKey,并使用它来检查是否myObject[data-key] == true。如果是,则应禁用该字段。

$scope.myObject = {
  myKey : true
}

<input type='text' ng-model='x' name="x" id="x" data-key="myKey" ng-disabled="myObject[data-key]"/>

如果我这样做就行了......

<input type='text' ng-model='x' name="x" id="x" data-key="myKey" ng-disabled="myObject.myKey == true"/>

但我希望能够传入数据密钥而不是字符串。这可能吗?

Plunk here

1 个答案:

答案 0 :(得分:1)

您可以创建类似

的自定义指令
app.directive('myDir', function(){
    return {
        restrict: 'EA',
        scope: {
        myKey:'=',
        object:'='
        }, 
        link: function(scope, $elm, $attrs) {
          console.log(scope.myKey); 
          if(scope.object[scope.myKey])
             scope.isDisabled=true;
        }
    };
});

<强> HTML

Working demo