2017-08-10 122 views
0
<div class="chks" ng-repeat="request in pendingRequest">          
<input type="checkbox" name="chk" ng-model="pendingRequest" id="chk1" ng-click="pendingUser(request.user_id)"> 
<label for="chk1">{{request.first_name}} {{request.last_name}}</label> 
</div> 

<button type="button" ng-click="checkVal()" class="btn btn-default next-step"><span class="next-step">Resend Linking Request</span></button> 

var selectUser = ''; 
$scope.pendingUser = function(user) { 
    selectUser = user; 
} 

$scope.checkVal = function() { 
    if (selectUser) { 
     alert(selectUser); 
    } else { 
     alert("CheckBox is not checked."); 
    } 
} 

如何檢查點擊checkVal按鈕函數是否具有user_id。onclick按鈕獲取所選值(複選框)的值

複選框點擊獲取Angularjs中的user_id。

+0

你' ng-repeat'在那裏。有多個項目時會發生什麼?返回一個數組? – Icycool

+0

是pendingRequest有一個數組 – Amy

+0

不,我的意思是檢查的結果。它應該返回檢查時,一些檢查和一些不是? – Icycool

回答

0

使用數組推送複選框中的值條目。

$scope.nameSelected= []; 

給出複選框的單個值。我假設這是第一個名字。

$scope.getAllSelected = function(){   
      angular.forEach($scope.first_name,function(key,value){ 
       if(key) 
        $scope.nameSelected.push(value) 
      }); 
    console.log($scope.nameSelected) 
     } 

從複選框輸入條目中刪除不需要的ng-click。 getAllSelected可以在你點擊提交按鈕的情況下完成。

0
<div class="chks" ng-repeat="request in pendingRequest">          
    <input type="checkbox" name="chk" ng-model="pendingRequest" id="chk1" ng-click="pendingUser(request.user_id)"> 
    <label for="chk1">{{request.first_name}} {{request.last_name}} 
    </label> 
</div> 

你爲什麼要在同一個模型上重複,而不是你的複選框是?你可以提供一個運動員什麼的。

$scope.checkVal = function(){ 

    if (selectUser) { 
     alert(selectUser); 
    } else { 
     alert("CheckBox is not checked."); 
    } 
} 

的selectUser是未定義在那裏,它被認爲是一個單一的用戶(和你應該通過它在PARAMS的話),或整個陣列pendingRequest?

如果你想檢查是否每個請求被選中,那麼你可以只綁定你的複選框request.selected並在檢查返回request.selected 這將是類似的東西:

$scope.checkVal = function(){ 
    angular.forEach($scope.pendingRequest, function(request) { 
     if (request.selected) 
      alert(request) 
     else 
      alert("Not selected") 
    }) 
} 
+0

pendingRequest包含數組值,其中在user_id存在我希望每個複選框的user_id當我invovked按鈕每個選定的user_id得到通知 – Amy

+0

檢查編輯我剛剛做了,然後不要忘記改變你的輸入的ng-model請求被選中 –