在MVC中回传RadioButtonFor

我的mvc网页上有2个单选按钮。

 // some html codes  m.Agents, "A", new { Checked = "checked" })%> //radio button 1  m.Agents,"AG") %> //radio button 2 // some html codes  

aspx页面如下所示。

我的页面也有按钮。如果我点击该按钮,则会发生回发。

如果我更改了radiobutton选择,我需要另一个回发。 如何在该事件上进行回发。但如果我更改了单选按钮的选择,则没有回发。 我怎样才能做到这一点?

你需要使用javascript。 当用户更改单选按钮的选择时,不会发生服务器端事件。 因此,如果您使用的是jquery,则可以订阅.change()事件并提交表单:

 <% using (Html.BeginForm("Search", "Search", FormMethod.Post, new { id = "myform" })) { %> <%= Html.RadioButtonFor(m => m.Agents, "A", new { @checked = "checked", @class = "radio" }) %> <%= Html.RadioButtonFor(m => m.Agents, "AG", new { @class = "radio" }) %> <% } %> 

然后在一个单独的javascript文件中:

 $(function() { $('#myform .radio').change(function() { $('#myform').submit(); }); }); 

这是使用单选按钮进行回发的一种方式: