亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

ng-checked 在 angular 1.6 中不強制復選框保持未選中狀態

ng-checked 在 angular 1.6 中不強制復選框保持未選中狀態

呼如林 2021-10-21 14:17:47
我有一個連接到函數的輸入元素IsChecked。IsChecked總是返回 false,我希望該復選框永遠不會被選中,無論它收到多少點擊。相反,發生的事情是無論我的功能如何,復選框都會更改為選中和未選中。如何根據函數調用強制復選框保持未選中狀態?<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-checked="IsChecked()"></input>    <div ng-repeat="login in logins">{{ login }}</div>    <div>{{IsChecked()}}</div></div>function LoginController($scope) {    $scope.user = {        firstName: "Foo",        lastName: "Bar"    };    $scope.logins = [];    $scope.IsChecked =function(){        return false;    }    $scope.login = function () {        $scope.logins.push($scope.user.firstName + " was logged in.");    };}
查看完整描述

3 回答

?
BIG陽

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可能是,假設您正在動態創建一個復選框,并且您需要傳遞一個表達式來設置復選框的狀態。


查看完整回答
反對 回復 2021-10-21
?
拉風的咖菲貓

TA貢獻1995條經驗 獲得超2個贊

ng-checked指令設置 acheckbox或 a的 checked 屬性radiobutton。

如果 ng-checked 屬性中的表達式返回 true,則復選框或單選按鈕將被檢查。

但這只是為了在開始時將其設置為未選中,下次單擊它時,將選中的屬性設置為 true。

您應該將 a 綁定ng-model到復選框并將其始終設置為 false?;蛘咧皇峭ㄟ^ngDisabled向其添加屬性來禁用復選框,使其不被選中。前任:

<input type="checkbox" ng-disabled="isChecked" />


查看完整回答
反對 回復 2021-10-21
?
吃雞游戲

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 中的工作示例


查看完整回答
反對 回復 2021-10-21
  • 3 回答
  • 0 關注
  • 234 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號