2016-08-02 126 views
1

我是AngularJS的新手。我正在使用WebApi和angularJS處理checkboxlist,需要幫助。 好吧,有一個複選框列表,用戶可以選擇多個選項。我能夠爲此寫出成功的代碼。所選選項被保存到數據庫中。但是,在編輯時,我希望已經選擇了這些選項。我怎樣才能做到這一點? 謝謝。AngularJS - 動態檢查複選框

這裏是我的CheckBoxList:

<div ng-repeat="value in getCheckboxlist"> 
    <input ichecklist type="checkbox" id="{{value.Id}}" value="{{value.Id}}"> 
    <span>{{value.Name}}</span> 
</div> 

陣列宣言:

$scope.selection: []; 

,這是我怎麼就編輯得到選擇的ID從數據庫:

其中「 selectedValues'包含選定ID的json。

+0

您的ng模型在哪裏這些複選框?你應該用ng檢查來做到這一點。 –

+0

我不使用ng模型。相反,我觸發ng-click,如ng-click =「toggleSelection(value.Id)」。此函數爲我獲取選定的值Ids,並將它們保存在數據庫中。 – Maryam

+0

好的,你可以用同樣的方式從數據庫中檢索數據。並將其添加到價值。我會更新我的回答 –

回答

2

您正在尋找來自AngularJS

ngChecked指令集的元素有關的檢查屬性,如果裏面ngChecked表達是真的。

使用方法如下

<input id="checkSlave" type="checkbox" ng-checked="expression"> 

您可以通過給將驗證是否選中此複選框應檢查與否的函數調用替換expression。該函數應返回truefalse

+0

謝謝,你的答案爲我工作:) – Maryam

+0

你可以標記它作爲未來的觀衆的答案,然後請 – Weedoze

1

通過採用NG-檢查,你可以把它寫成遵循

//Angular Controller codes 
$scope.Checkboxlist = [{id:1, value: true, Name: "A"}, {id:2, value: false, Name: "B"}]; 

//View codes 
<div ng-repeat="value in Checkboxlist"> 
    <input ichecklist type="checkbox" id="{{value.Id}}" ng-checked="Checkboxlist[$index].value"> 
    <span>{{value.Name}}</span> 
</div> 
+0

感謝您的答案,但我不得不改變控制器,以獲得我不想要的json值。所以,我用函數調用在ng檢查,這工作:)再次感謝:) – Maryam