Asp.net MVC复选框事件HTTPPOST ServerSide

问题描述:

网络mvc5窗体和使用复选框。Asp.net MVC复选框事件HTTPPOST ServerSide

我的条件,我需要选择该复选框(真)

它像HTTPPOST选中复选框后立即行动应该叫后immedaitely呼叫HTTPPOST行动。

我需要将Model传递给HTTP Post。

请问我可以告诉我最新的方法是什么?

+0

使用剃须刀,你可以用'@ Html.CheckBox( “chkName”,假的,新{的onclick = “this.form.submit();”})' - 看到[这里](https://*.com/questions/18721288/using-checkbox-submit-form-in-asp-net-mvc) –

我建议使用jQuery来实现这一点。假设您的复选框被嵌套在一个形式,你可以使用:

$(function() { 
    $('#CheckBoxName').change(function() { 
     $(this).closest("form")[0].submit(); 
    }); 
}); 

这将触发回传,调用相应的HttpPost方法和发送模式作为参数。

+0

它有助于解决这个问题 –

您应该使用javascript对checkbox的更改做出反应,然后通过ajax进行发布。

这里是个例:

$('#checkbox').change(function(){ 
    if (this.checked){ 
       var jsonModel = '@Html.Raw(Json.Encode(Model))'; 

       $.ajax({ 
       type: 'post', 
       url: '@Url.Action("UrlOfPostAction")', 
       data: { Model: jsonModel}, 
       dataType: 'json', 
       success: function (res) { 
        //Do something 
       } 
       //manage errors 
      }); 
    } 
});