AngularJS:如何确定模型是否已禁用

时间:2016-12-13 21:37:25

标签: angularjs

我有一个表单,某些字段因各种条件而被禁用。有没有办法确定是否禁用了模型(在控制器中没有运行相同的ng-disabled条件)?

1 个答案:

答案 0 :(得分:1)

如果您的视图中有表单,则会有一个表单对象,其中包含您为控制器作用域上的表单指定的名称,您可以在控制器内访问该表单。

但是,您无法从控制器级别访问属性(已禁用是输入中的属性)(与您可以轻松地从指令访问输入属性):

app.directive('mydir', function ($compile) {
    return {
        require: '^form',        
        link: function(scope, element, attrs, formCtrl) {
            var allDisabledInputs = $(formCtrl).find(':input:disabled');

            //do stuff here
        }
    };
});

在你的表格上:

<form name="someForm" my-dir >
    <input name="input1"  />
    <input name="input2" disabled />
</form>