通过ajax将选中的复选框传递给控制器

时间:2014-02-26 07:21:32

标签: c# jquery asp.net asp.net-mvc

我正在ASP.net MVC上开发一个项目。

我有一个带有一些复选框的html表单,例如A,B,C,D& E和 我通过ajax将表单发布到其中一个控制器。

我想清楚地确定是否从控制器检查了每个复选框,并根据所选的复选框值执行某些操作。

我想知道最佳做法来实现这一目标。

P.S:我将把选中的复选框值传递给基础DAL。

1 个答案:

答案 0 :(得分:2)

你可以通过多种方式实现这一目标。在这里,我给出了一个样例 -

使用模型对象

假设您在服务器端有一个带有字段

的模型“CheckBoxValues”
public class CheckBoxValues
{
    public Boolean A { get; set; }
    public Boolean B { get; set; }
}

在您的html页面上,使用代码从按钮单击处理程序的复选框中获取值 -

var values= {};
var StateOfCheckBoxA = $('#CheckBoxA').is(':checked'); 
values.A= StateOfCheckBoxA  ;
var StateOfCheckBoxB = $('#CheckBoxB').is(':checked'); 
values.B= StateOfCheckBoxB;

var SubmitURL = YourController/ActionMethod/


            $.ajax({
                type: "POST",
                url: SubmitURL,
                data: values,
                dataType: 'json',

                beforeSend: function () {

                },
                success: function (result) {

                },
                error: function (request, status, error) {

                },
                complete: function () {

                }
            });

现在你的行动方法

 public JsonResult Create(CheckBoxValues values)
 {
       Boolean checkboxA=values.A;
       Boolean checkboxB=values.B;
 }

希望这会对你有所帮助。