Вы пытались не использовать jquery, как это.Это можно сделать с помощью jquery, но также можно использовать модель представления.В представлении вы можете подключить список выбранных значений к вашему списку.Пользователь сможет выбрать один или несколько параметров, и он автоматически заполнит выбранные значения.Ниже приведен пример.Также я напечатал это без компиляции, но я надеюсь, что вы поняли идею.
Вид
@Model SelectStuff
@using (Html.BeginForm("Index","Home",FormMethod.Post))
{
@Html.ValidationSummary(true)
@Html.ListBox("SelectStuffSelected", Model.SelectStuff, new { @class = "whatever here" })
// NOTE!!!!PAY ATTENTION HERE SelectStuffSelected will be used in the viewmodel!!!!!
<p >
<input type="submit" value="Submit" />
</p>
}
Контроллер
public ActionResult index()
return view();
[HttpPost]
public ActionResult(SelectStuff model)
{
return view(model);
}
ViewModel
public class SelectStuff
{
public SelectStuff(){InitialSignature();}
private void InitialSignature()
{
List<SelectListItem> IntialSignatureRaw = new List<SelectListItem>();
IntialSignatureRaw.Add(new SelectListItem
{
Text = "Yes",
Value = "1",
Selected = true
});
IntialSignatureRaw.Add(new SelectListItem
{
Text = "No",
Value = "0"
});
SelectStuff= new SelectList(IntialSignatureRaw, "Value", "Text");
}
//here comes the magic
public virtual MultiSelectList SelectStuff {get;set;}
public virtual List<string> SelectStuffSelected{get;set;}
//PAY ATTENTION HERE!!!!! do you see SelectStuffSelected is wired to the view above?
}