我有一个MVC#下拉列表,其中包含模型中定义的值。
@Html.DropDownListFor(model => model.myModel, new SelectList(Model.List, "Value", "Text"))
我希望它像按钮一样动作,即在选择时,在控制器中执行动作并返回到同一视图。我为它创建了一个控制器方法,如
[HttpPost]
public ActionResult Index(int? selectedIndex)
{
}
我想知道如何从视图中获取所选索引。即,如何将特定的下拉列表绑定到控制器。
答案 0 :(得分:0)
@Html.DropDownListFor
呈现一个html input
标记,当选择更改时,该标记不会发布到服务器。
您必须使用一些javascript / jQuery来捕获下拉列表的更改事件,并将值发布到服务器,如下所示:
$(document).ready(function() {
$("#myModel").on('change', function(e) {
$.post('@Url.Action("Index")', {id: $(this).val()},
function(data) {
// here data contains the response from your action index
});
});
});