私は2つのリストを持つウェブページを持っています。検索によって作成されたソースリスト(availableThingsで表される)と、ユーザーが選択したアイテム(selectedThings)。 selectedThingsの一意のリストを維持したいので、すでに選択されているものを使用可能なリストから削除したいと思います。下記の私のコードスニペットでは、data.AvailableThings
はサーバーから取り込まれ、ユーザーが選択したものについては知識がありません。ユーザーは3つまでの項目を選択でき、ergo selectedThings.items
は3つ以上の項目を含みません。 availableThings.items
は潜在的に数千になる可能性があります。これは非効率的ですか?
availableThings.items
が入力された後、HTML生成用にICanHazにフィードします。 FWIW、リスト間のドラッグ動作にjQueryを使用していますが、質問はjQueryに依存しません。
[... jQuery AJAX call snipped ...]
success: function (data) {
availableThings.items = [];
for (var thing in data.AvailableThings) {
var addToList = true;
for (var existing in selectedThings.items) {
if (existing.Id === thing.Id) {
addToList = false;
break;
}
}
if (addToList) {
availableThings.items.push(thing);
}
}
}
「ICanHaz」? ...これは偶然、LOLCODEの何らかの形と統合されていますか? –
ICanHazは、MustacheとjQueryのテンプレートを組み合わせたテンプレートライブラリです。http://icanhazjs.com –
AvailableThingsリストにはサーバーからの注文はありますか? – yoozer8