ビュー内にサービス タイプと呼ばれるモデル プロパティを持つエディタ テンプレートがあります。つまり、ページに N 個のリストボックスが表示される可能性があります。
@Html.ListBoxFor(model => model.ServiceTypes, new MultiSelectList(RunLog.Domain.Lists.GlobalList.PartsServiceTypes(), "ID", "Name"), new { style = "width: 200px; height: 80px;", id = "lstbox", name = "listbox" } )
次の Jquery .Load 関数は、部分ビューをレンダリングします。このダイアログ ボックスにはチェックボックス付きのツリービューがあり、ツリービューからアイテムを選択/チェックして選択を押すと、たとえば 10 個のチェックボックスを選択すると、10 個のリスト vbox を選択すると表示されます。アクションから情報を取得し、リスト ボックスをレンダリングする jquery .load があります。
if (btnText == 'Select') {
partTextArea = "";
$("#parts :checkbox:checked").each(function () {
var v = $(this).val();
if (partTextArea.length > 0) {
partTextArea = partTextArea + "| ";
}
partTextArea = partTextArea + v;
});
$('body').css('cursor', 'wait');
$("#inputParts").load(serviceListPartsUrl, { ServiceEntryID: $("#ServiceEntryID").val(), Parts: partTextArea });
$('body').css('cursor', 'auto');
}
問題は、この .load が発生するたびに、複数のリストボックスで以前に選択されたサービスタイプが失われることです。何か案は?