2016-04-29 60 views
0

有人可以告訴我應該如何檢索angularjs中選定複選框的值。我會給你一個簡短的場景。我有一個名爲'user'的對象,其中我有一個權限列表作爲'user'的成員。現在在jsp中我有幾個複選框,我想要的是當我檢查複選框時,所選擇的複選框的值應該與權限列表whoch存在於'用戶'中映射,我該怎麼做。 我會告訴我的允許複選框JSP代碼如下所示我無法檢索angularjs中所選複選框的值

<div class="form-group required"> 
<label for="Permissions" class="col-sm-3 control-label">Permissions</label> 
<div class="col-sm-6 Nopadding" data-ng-model="ctrl.user.permissionVoList.permissionId"> 
    <div class="checkbox" data-ng-repeat="permissionVo in ctrl.permissionVoList" > 
     <label data-toggle="tooltip" data-placement="right" 
      data-html="true" 
      title="<p align='left'>{{permissionVo.description}}</p>"> 
      <input type="checkbox" value={{permissionVo.permissionId}} /> {{permissionVo.permissionName}} 
     </label> 
    </div> 

</div> 

,並在控制器的用戶對象如下

self.user={ 
        userId:'1', 
        firstName:'Vishal', 
        middleName:'Vasant', 
        lastName:'Raut', 
        phoneNumber:'9898989898', 
        emailId:'[email protected]', 
        username:'vishal', 
        password:'111111', 
        notification:'no', 
        costPerHour:'1000', 
        roleVo:{roleId:''}, 
        shiftVo:{shiftId:''}, 
        permissionVoList:[{permissionId:''}] 

      }; 
+0

使用NG-模型綁定的值 – Manish

+0

我已經用它,但代碼似乎沒有工作 – Vish

回答

2

angular.module('app',[]).controller('ctrlA',function(){ 
 
    var self = this; 
 
self.selectedPermissions = []; 
 
    self.user={ 
 
         userId:'1', 
 
         firstName:'Vishal', 
 
         middleName:'Vasant', 
 
         lastName:'Raut', 
 
         phoneNumber:'9898989898', 
 
         emailId:'[email protected]', 
 
         username:'vishal', 
 
         password:'111111', 
 
         notification:'no', 
 
         costPerHour:'1000', 
 
         roleVo:{roleId:''}, 
 
         shiftVo:{shiftId:''}, 
 
         permissionVoList :[{permissionId:1,permissionName:"One"},{permissionId:2,permissionName:"Two"}] 
 

 
       }; 
 
self.pushPermission = function(p){ 
 

 
    self.selectedPermissions.push(p); 
 
} 
 

 
    });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
    <div ng-app="app" ng-controller="ctrlA as ctrl"> 
 
    <div class="form-group required"> 
 
    <label for="Permissions">Permissions</label> 
 
    <div> 
 
    <label ng-repeat="permission in ctrl.user.permissionVoList"> 
 
     Label {{permission.permissionName}} 
 
     <input type="checkbox" ng-model="permission.isCheckd"> 
 
     </label> 
 
    </div> 
 
    </div> 
 
    and 'user' object in the controller is as follows {{ctrl.user| json}} 
 
    </div> 
 
    </div>

+0

其周圍工作真的還是假的,但你能告訴我如何獲取所選複選框的「值」,同時permissionId是一個不是布爾值的int值。可以做些什麼? @mohsin – Vish

+0

你想要什麼價值?告訴我權限的適當結構permissionListList –

+0

permissionVoList是permissionVo對象的列表,permissionVo包含{permissionIdm permissionName等},對UI用戶可以選擇多個權限。所以用戶在UI上選擇的複選框的值將在permissionId中:something1,pemissionId:something2 ..等等......我需要將這些permissionVo對象包裝在一個單獨的列表對象中,即permissionVoList – Vish

0

可以使用親清單模型檢索複選框的數據。訪問鏈接here