且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

MVC3阿贾克斯后复式复选框值控制器

更新时间:2023-02-25 17:21:07

尝试将数据序列化传统:真正的

$.ajax({
    url: "/room/removeselectedroom/@Model.mRoomid",
    type: "POST",
    dataType: "json",
    data: jdata,
    traditional: true,
    success: function (msg) {
        $('#mRooms').html(msg);
    }
})

这里了解数组序列的一些信息。

Here some information about array serialization.

对于jQuery 1.4,在$ .PARAM()方法序列化对象的深递归,以适应现代脚本语言和框架,比如PHP和Ruby on Rails。您可以通过设置jQuery.ajaxSettings.traditional =真在全球禁用此功能。

As of jQuery 1.4, the $.param() method serializes deep objects recursively to accommodate modern scripting languages and frameworks such as PHP and Ruby on Rails. You can disable this functionality globally by setting jQuery.ajaxSettings.traditional = true;.

ASP.Net MVC模型绑定需要的阵列形式的数据。

ASP.Net MVC model binding requires array data in form of

mRooms=1&mRooms=2&mRooms=3

但是从jQuery的1.4发送

But from jQuery 1.4 it sends

mRooms[]=1&mRooms[]=2&mRooms[]=3

这就是为什么你必须使用传统:真正的

This is why you have to use traditional: true