2

Html(私は使用しませんでした)では、

<select>
<option value="B">Bubblegum</option>
</select>

(コントローラーから)Aspxでは

[HttpGet]
public ActionResult ViewMethod()
{
//Populate DropDownList
Treats = new List<KeyValuePair<string, string>>();
Treats.Add(new KeyValuePair<string, string>("Bubblegum", "B"));
ViewData["treats"] = new SelectList(Treats, "Value", "Key", SelectedTreat);
return View();
}
[HttpPost]
public ActionResult GeneratedContent(SomeModel model)
{
List<HalloweenTreats> ChewingGums = StoredProc(model.SelectedTreat);
return PartialView(ChewingGums);
}

次に、ビューで:

<% using (Ajax.BeginForm("ViewMethod", "ControllerName", new AjaxOptions { UpdateTargetId = "DisplayValues" })) { %>

<%: Html.DropDownListFor(x => x.SelectedTreat, ViewData["treats"] as SelectList)%>
<input type = 'submit' name = 'submit' value = 'generate' />
<div id="DisplayValues"></div>
<% } %>
<%: Ajax.ActionLink("Generate", "RequestReportSummary", "Report", new { model = Model }, new AjaxOptions { UpdateTargetId = "GeneratedReport" })%>

aspxエンジンでHtml.DropDownListForの選択された値「B」を取得してデータベースに文字列として送信するにはどうすればよいですか?

4

1 に答える 1

1

投稿するコントローラーアクションは、モデルをパラメーターとして受け取ることができます。

[HttpPost]
public ActionResult ViewMethod(SomeModel model)
{
    // model.SelectedTreat will contain the selected value here
}
于 2012-08-19T06:39:29.850 に答える