Array1のng-repeatを使って複数のチェックボックスを作成しようとしていますが、一致するかどうかによって、 "checked"属性を(ng-checkedを使用して) Array2。2つの配列をng-repeatで比較する
は、ここでは、コントローラ内の配列1を持っている:
$scope.possibleConditions = ["condition1", "condition2", "condition3", "condition4"];
、その後、配列2は、同じコントローラからではなく、JSON APIを介してです。
{
"treated" : false,
"data" : [{
"conditions" : ["condition1", "condition2"],
}]
}
これは、テンプレートに設定私の現在のNG-繰り返しである:
<p ng-repeat="condition in possibleConditions">
<input type="checkbox" id="{{condition}}" />
<label for="{{condition}}">
{{condition}}
</label>
</p>
欲求がARRAY1で言う、「条件1」の中で発見された場合などの入力に属性checked
を適用することですArray2からの "条件"。
1:私が試した何
ng-と
.filter('customArray', function($filter){
return function(list, arrayFilter, element){
if(arrayFilter){
return $filter("filter")(list, function(listItem){
return arrayFilter.indexOf(listItem[element]) != -1;
});
}
};
:は、私は私のコントローラの後に(私はstackoverflowの上で見つかった)フィルタを使用して試してみました繰り返し少し修正:
しかし、それは動作しませんでした。
2: ng-repeat内でもう1つのng-repeatを試してみましたが、最初の1つの試合と照合してみました。
例:
<p ng-repeat="conditions in possibleConditions">
<input ng-repeat="condition in profileData.data[0].conditions | filter{condition == conditions}" type="checkbox" id="{{condition}}" />
<label ng-repeat="condition in profileData.data[0].conditions | filter{condition == conditions}" for="{{condition}}">
{{condition}}
</label>
</p>
うまくいけば、誰かが助けることができます/いくつかのガイダンスを指します。 ありがとうございます。あなたが本当にここにフィルタを必要としない
これは完璧に機能しました!あなたの迅速な対応に感謝します。私はあなたの答えを受け入れるでしょう。 – Jonathan
うれしかったです。 – dfsq