私のモデルにはアイテムの配列が含まれています:
public class MyModel
{
public IEnumerable<ListItem> AllItems { get; set; }
public string[] SelectedItems { get; set; }
}
単一の複数選択ドロップダウン リストを作成して Razor でレンダリングするのは簡単なことだと理解していますが、項目のリストが非常に長く、複数選択では優れた UI エクスペリエンスが得られません (選択を失うのが簡単すぎます)。
項目ごとに個別のドロップダウンを使用したいと思います。これは HTML / JS で簡単に管理できますが、送信時に MVC のモデル バインディングを機能させるには、要素 ID をどのようにすべきか疑問に思っています。
ありがとう!
アップデート
私がやりたいのは、この HTML に似たもので、選択した項目ごとに 1 つのリストがあり、新しい項目を追加したり、既存の項目を削除したりできます。
<select>
<option value="1" selected>blah</option>
...
<option value="15">blah</option>
...
<option value="xx">[ remove this item ]</option>
</select>
<select>
<option value="1">blah</option>
...
<option value="15" selected>blah</option>
...
<option value="xx">[ remove this item ]</option>
</select>
<button>Add another</button>
これで私の質問が少し明確になることを願っています。