ng-readonly无法在角度复选框中工作

Pra*_*nan 16 checkbox angularjs

我可以在复选框中使用ng-readonly指令吗?

即使用ng-readonly修饰后,该复选框也是可写的.

HTML:

<input type="checkbox" ng-model="model" ng-readonly="test" /> {{model}}
Run Code Online (Sandbox Code Playgroud)

控制器:

myApp.controller('MyCtrl', function($scope) {
    $scope.test = true;
});
Run Code Online (Sandbox Code Playgroud)

添加小提琴

mac*_*rog 30

如果要禁用它,请使用以下命令:

<input type="checkbox" ng-disabled="true" ng-model="test" />
Run Code Online (Sandbox Code Playgroud)


小智 9

如果你想让它"更"可见,你可以随时使用一些小技巧:

<input type="checkbox" ng-model="model" onclick="return false;" />
Run Code Online (Sandbox Code Playgroud)


Vai*_*hah 7

ng-readonly仅适用于输入类型="text"

请参阅此处的文档 - https://docs.angularjs.org/api/ng/directive/ngReadonly

HTML规范不要求浏览器保留布尔属性的值,例如readonly.(它们的存在意味着真实,它们的缺失意味着错误.)如果我们将Angular插值表达式放入这样的属性中,那么当浏览器删除属性时绑定信息将会丢失.The ngReadonly directive solves this problem for the readonly attribute.浏览器不会删除此补充指令,因此提供了存储绑定信息的永久可靠位置.