2014-07-03 24 views
1

代碼view.html:如何在使用ng-repeat時獲取複選框的值?

<label ng-repeat = "agents in acesslevel |filter:{acesslevel: 'Agent'}"> 
    <div class="col-xs-2"> 
     <input type= "checkbox" 
       ng-model="agentsSelected" 
       checklist-value="agents.name" 
       ng-true-value=agents ng-false-value="'NO'"> 
     {{agents.name}} 
    </div> 
</label> 

其中ACESSLEVEL是JSON格式的數據我最數據庫中獲取。

例如

{ 
    "acesslevel": "Quality", 
    "dob": "1995-02-03", 
    "name": "anjali", 
    "password": "tanya", 
    "username": "anju", 
    "createdAt": "2014-07-02T16:26:26.816Z", 
    "updatedAt": "2014-07-02T16:26:26.816Z", 
    "id": "53b432b230aaa394278522ca" 
}, 

{ 
    "acesslevel": "Agent", 
    "dob": "1995-02-03", 
    "name": "christopher", 
    "password": "tanya", 
    "username": "anju", 
    "createdAt": "2014-07-02T16:26:48.170Z", 
    "updatedAt": "2014-07-02T16:26:48.170Z", 
    "id": "53b432c830aaa394278522cb" 
} 

在HTML這種特殊代碼diplaying的座席人員名字的ACESSLEVEL(在上述情況下,它會顯示克里斯托弗)

現在我想什麼我怎麼才能在控制器中選擇複選框的值

我想將這個選定的代理數據插入到我的數據庫服務器的新表中。

+0

你想勾選複選框? ng-model是複選框綁定的內容,但是您將其綁定到所有代理的相同內容?如果你使用'ng-model =「agents.isChecked」',你可以獲得控制器中每個訪問級別的isChecked值。 – Patrick

+0

@Patrick我想要所有在我的控制器中點擊的代理,以便從那裏我可以在我的mongodb服務器上發現它。 –

+0

爲什麼您將複選框綁定到agentsSelected而不是代理實例上的屬性?這不能解決你的問題嗎? – Patrick

回答

0

問題是你正在使用ng-model綁定到(我想是的)一個數組,但angular期望一個布爾值(true或false)。

,如果你不是綁定到你的過濾ACCESSLEVEL陣列的實例的屬性,你可以在你的控制器後提取數據

<label ng-repeat = "agents in acesslevel |filter:{acesslevel: 'Agent'}"> 
    <div class="col-xs-2"> 
     <input type= "checkbox" 
       ng-model="agents.isSelected" <!-- bind to another value --> 
       checklist-value="agents.name" 
       ng-true-value="agents" 
       ng-false-value="'NO'"> 
     {{agents.name}} 
    </div> 
</label> 

你的控制器,如果你比如有一個方法可以稍後訪問該屬性將值提交到您的後端。

$scope.submit = function() { 
    var selectedAgents = []; 
    angular.forEach($scope.acesslevel, function (agent) { 
     if (agent.acesslevel == 'Agent' && agent.isSelected) { 
      selectedAgents.push(agent); 
     } 
    }); 
    // here you can make calls to your backend with the selectedAgents variable. 

}; 
+0

工程,非常感謝。因爲那個被激怒了 非常新的角js,剛剛開始一週前,所以不知道很多。 順便說一句任何書籍或文章推薦角?和任何想法使用select2角度通過ng重複? –