我正在使用此代码将所选项目的值从视图发布到控制器
@using (Html.BeginForm())
{
@Html.DropDownListFor(model => model.MyVar, (SelectList)ViewData["List"])
<button name="Button" value="Valider">Valider</button>
}
有没有办法在选择列表中选择更改时发送值(无需点击按钮)?
答案 0 :(得分:2)
如果您将ViewData中的SelectList命名为与模型中变量的名称相同,则MVC将自行计算其余部分。
所以你的下拉列表看起来像是:
@Html.DropDownList(ViewData.MyVar, String.Empty)
这与命名您的ViewData项目&#39;列表&#39;。
相反答案 1 :(得分:1)
是的,您可以通过JQUERY通过jquery在表单上的下拉选择更改中执行此操作:
添加ID以下拉:
@Html.DropDownListFor(model => model.MyVar, (SelectList)ViewData["List"], new { id="SomeId"})
并编写jquery事件:
$(function(){
$("#SomeId").change(function(){
$(this).closest("form").submit(); // this will post the form
});
});