在角度指令

时间:2017-06-08 10:40:13

标签: angularjs angularjs-directive angularjs-ng-disabled

我有一个角度指令:

angular.module("app").directive("myButtons", function () {
    return {
        restrict: "E",
        scope: {
            bdisabled: '='
        },
        templateUrl: "buttons.html"
    }
});

模板:

<input type="submit" value="Update" ng-disabled="{{bdisabled}}" />

HTML:

<my-buttons bdisabled="!form.$valid"></my-buttons>

我正在尝试在模板中设置按钮的禁用状态。上面的代码几乎可以使用。

表单加载并且有效,html呈现如下:

<input type="submit" ng-click="bdisabled()" value="Save" ng-disabled="false" disabled="disabled">

当我将表单无效时,ng-disabled更改为true但禁用=“禁用”无论如何都会保留。

我做错了什么?

3 个答案:

答案 0 :(得分:2)

因为ng-disabled是angular指令,所以不需要使用大括号

<input type="submit" value="Update" ng-disabled="bdisabled" />

答案 1 :(得分:2)

ng-disabled="{{bdisabled}}"更改为ng-disabled="bdisabled"

不需要插值算子,因为它已经在角度范围内。

答案 2 :(得分:2)

您可以在ng-disabled中使用变量本身,例如ng-disabled='disabled' 不需要插值运算符,因为它是原生角度指令