Подтвердить что ты не робот

Ng-readonly не работает в angular флажке

Могу ли я использовать директиву ng-readonly в флажке?

Этот флажок доступен для записи даже после того, как он украшен ng-readonly.

Html:

<input type="checkbox" ng-model="model" ng-readonly="test" /> {{model}}

Контроллер:

myApp.controller('MyCtrl', function($scope) {
    $scope.test = true;
});

Добавлено Fiddle

4b9b3361

Ответ 1

если вы хотите отключить его, используйте это:

<input type="checkbox" ng-disabled="true" ng-model="test" />

Ответ 2

Если вам нравится, чтобы он был "более" видимым, вы всегда можете использовать небольшой трюк javascript:

<input type="checkbox" ng-model="model" onclick="return false;" />

Ответ 3

ng-readonly работает только с типом ввода = "текст"

см. документацию здесь - https://docs.angularjs.org/api/ng/directive/ngReadonly

Спецификация HTML не требует, чтобы браузеры сохраняли значения логических атрибутов, таких как readonly. (Их присутствие означает true, а их отсутствие означает false). Если мы помещаем выражение интерполяции Angular в такой атрибут, тогда информация о привязке будет потеряна, когда браузер удалит этот атрибут. The ngReadonly directive solves this problem for the readonly attribute. Эта дополнительная директива не удаляется браузером и поэтому обеспечивает постоянное надежное место для хранения информации привязки.