Asp.net mvc 单击事件仅启动一次

Asp.net mvc 单击事件仅启动一次,asp.net-mvc,model-view-controller,asp.net-mvc-2,Asp.net Mvc,Model View Controller,Asp.net Mvc 2,我有一个表格,其中有许多复选框。我需要在选中或取消选中任何复选框后将数据发布到控制器,即单击复选框必须发布到控制器,并且没有提交按钮。在这种情况下,下注的方法是什么?我想到了Ajax.BeginForm,并有下面的代码。我遇到的问题是,复选框单击事件只被检测到一次,之后单击事件不会启动。为什么会这样?我该怎么纠正呢 <% using (Ajax.BeginForm("Edit", new AjaxOptions { UpdateTargetId = "tests"}))

我有一个表格,其中有许多复选框。我需要在选中或取消选中任何复选框后将数据发布到控制器,即单击复选框必须发布到控制器,并且没有提交按钮。在这种情况下,下注的方法是什么?我想到了Ajax.BeginForm,并有下面的代码。我遇到的问题是,复选框单击事件只被检测到一次,之后单击事件不会启动。为什么会这样?我该怎么纠正呢

<% using (Ajax.BeginForm("Edit", new AjaxOptions { UpdateTargetId = "tests"}))
         {%>
               <div id="tests">
                    <%Html.RenderPartial("Details", Model); %>
               </div>
                <input type="submit" value="Save" style="Visibility:hidden" id="btnSubmit"/> 
          <%}
          %>

 $(function() {
 $('input:checkbox').click(function() {
        $('#btnSubmit').click();
    });
  });

请尝试$'myForm'。提交。

。我认为您需要使用each关键字和bind,以便每次都进行绑定。

作为调试步骤,请尝试在单击事件期间执行其他操作,如

$('input:checkbox').click(function() {
    $('#debugDiv').append('click event fired at ' + new Date().toString());
});
查看问题是否与表单提交有关


您还可以尝试使用jQuery的live函数,而不是单击:

Wait,哪个单击事件?表单上的还是复选框上的?简单地说,live Keywood解决了这个问题。多谢各位$输入:checkbox.live'click',函数{$'myForm'。click;};};