Обратная передача на RadioButton для MVC - PullRequest
2 голосов
/ 12 февраля 2011

У меня есть 2 радиокнопки на моей веб-странице mvc.

 <% using (Html.BeginForm("Search", "Search"))
   { %>
  // some html codes
     <%= Html.RadioButtonFor(m => m.Agents, "A", new { Checked = "checked" })%> //radio button 1                     
      <%= Html.RadioButtonFor(m=> m.Agents,"AG") %>  //radio button 2                      
  // some html codes
   <% } %>

страница aspx показана ниже.

У меня также есть кнопка на моей странице. И если я нажал на эту кнопку, затем происходит обратная передача.

Мне нужна другая обратная передача, если я изменил выбор радиокнопок.Как я могу сделать обратную передачу на этом событии. Но обратной передачи нет, если я изменил выбор переключателей.Как мне этого добиться?

Ответы [ 2 ]

6 голосов
/ 07 декабря 2012

это один из способов сделать пост обратно с помощью радиокнопки:

<label>@Html.RadioButton("Buyer", "Buyer", new { onchange = "this.form.submit();" })Buyer</label>
5 голосов
/ 12 февраля 2011

Для этого вам нужно будет использовать 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();
    });
});
...