0

コントローラ

 IEnumerable<SelectListItem> process = 
    from proc in         
        XDocument.Load("Processes.xml").Descendants("Process")  
          select new SelectListItem
          {
              Text = (string)proc.Element("ConfigFile")
          };
    ViewBag.process = process;

見る

<p>@Html.DropDownList("process")</p>

ドロップダウン リストで選択された項目のイベントを処理したいのですが、少し Google で検索したところ、通常の ASP や WinForm アプリケーションのような通常のイベント ハンドラはないと人々は言います。

javascript と jquery には詳しくありませんが、コードは理解できました

4

1 に答える 1

0

この DropDown をフォーム内に配置し、javascript を使用してそのonchangeイベントをサブスクライブし、このフォームを手動で送信できます。

@using (Html.BeginForm("SomeAction", "SomeController"))
{
    @Html.DropDownList("process", Model.Items, new { onchange = "this.form.submit();" })
}

これにより、選択した値が取得できる SomeAction に POST されます。

[HttpPost]
public ActionResult SomeAction(string process)
{
    // the process argument will contain the selected value from the dropdown
    ...
}
于 2013-02-05T13:21:05.510 に答える