2016-07-29 78 views
0

我使用角來驗證一個複選框並使用ng-model爲:ngModel除去複選框的選中狀態自動

<input type="checkbox" name="news1" value="news1" ng-model="news" <c:if test="${xxxx == yes'}">checked="checked"></c:if>> 
<label ng-click="news1();"></label> 

當其中的複選框被嵌入在網頁經由其通過的狀態的鏈路稱爲新聞1(是)..我的意思是如果用戶已經註冊了news1或沒有。如果是這樣,該複選框應該被動態檢查,否則它會被取消選中。

問題是,當我在複選框中使用/添加:ng-model="news1"作爲屬性時,它無法正常工作。該複選框會被檢查幾秒鐘,並突然取消選中。

在我在下面的函數改變頁面後複選框的狀態控制器已經被加載,從而使用戶能夠檢查和/或取消選中該複選框:

$scope.news1 = function(){ 
    if(!$scope.news1){ 
     $scope.news1 = !$scope.news1; 
    } else{ 
     $scope.news1 = !$scope.news1; 
    } 
}; 

問題,如何解決這個問題,以便當鏈接中news1的狀態是複選框時,它會繼續被檢查:是的。 如何防止角度設置複選框自動取消選中?

謝謝!

+0

您正在使用同一個名稱作爲屬性和函數名稱。重命名這兩個更具描述性,這將解決您的問題。 – andale

+0

使用值或ng模型,而不是兩者。 – doge1ord

+0

他們都沒有幫助...當我檢查生成的代碼在鉻我看到角添加以下複選框作爲屬性類中的值calss =「check-filialen ng-pristine ng-untouched ng-valid ng-空」 –

回答

0

我找到了解決辦法..它ng-init="xxxxx=true"

<input type="checkbox" name="news1" value="news1" ng-model="news" <c:if test="${xxxx == yes'}"> ng-init="news=true"></c:if>> 

謝謝!