3 回答

TA貢獻1859條經驗 獲得超6個贊
您應該使用檢查更改事件ng-change并使用模型傳遞模型以讀取復選框的值ng-model。
<input type="checkbox" ng-change="CheckedChanged()" ng-model="isChecked" />
并讓它保持不受檢查 -
$scope.CheckedChanged =function(){
$scope.isChecked = false; // To make it remain unchecked
}
檢查這個小提琴
這樣你就可以ng-checked在這種情況下省略。ng-checked并且ng-model不能一起使用。using 的一個用例ng-checked可能是,假設您正在動態創建一個復選框,并且您需要傳遞一個表達式來設置復選框的狀態。

TA貢獻1995條經驗 獲得超2個贊
該ng-checked
指令設置 acheckbox
或 a的 checked 屬性radiobutton
。
如果 ng-checked 屬性中的表達式返回 true,則復選框或單選按鈕將被檢查。
但這只是為了在開始時將其設置為未選中,下次單擊它時,將選中的屬性設置為 true。
您應該將 a 綁定ng-model
到復選框并將其始終設置為 false?;蛘咧皇峭ㄟ^ngDisabled
向其添加屬性來禁用復選框,使其不被選中。前任:
<input type="checkbox" ng-disabled="isChecked" />

TA貢獻1829條經驗 獲得超7個贊
您可以ng-model在該復選框上添加一個并關聯一個on-click函數,這樣無論何時單擊該復選框,該函數都會將其恢復為未選中狀態。
HTML
<div ng-app ng-controller="LoginController">
<div>Hello {{ user.firstName }}</div>
<input ng-model="user.firstName"></input>
<input type="submit" ng-click="login()" value="Login"></input>
<input type="checkbox" ng-model="checkboxCheck"
ng-click="CheckStatus()"></input>
<div ng-repeat="login in logins">{{ login }}</div>
<div>{{checkboxCheck}}</div>
</div>
JS
function LoginController($scope) {
$scope.user = {
firstName: "Foo",
lastName: "Bar"
};
$scope.logins = [];
$scope.checkboxCheck = false;
$scope.IsChecked = function() {
$scope.checkboxCheck = false;
return $scope.checkboxCheck;
}
$scope.login = function() {
$scope.logins.push($scope.user.firstName + " was logged in.");
};
$scope.CheckStatus = function() {
$scope.checkboxCheck = false;
}
}
這是JSFIDDLE 中的工作示例
添加回答
舉報