在Ajax调用中传统:true选项和false之间的区别是什么?

时间:2017-09-06 17:51:47

标签: ajax post asp.net-ajax

所有这些都是为了丢弃MVC控制器的问题。

这是ajax的代码:

 $.ajax({
            //tipo de transferencia
            type: "POST",
            //dato a enviar
            dataType: 'Json',
            traditional:true,
            //enviar variable previamente formada contiene la estructura del modelo
            data:data,

            //liga previamente asignada esta liga contiene  la ruta controlador-metodo
            url: url,

注意传统:真实。

1 个答案:

答案 0 :(得分:7)

jQuery API文档

http://api.jquery.com/jQuery.Ajax/#jQuery-ajax-settings

  

传统

     

类型:布尔值

     

如果您想使用,请将此项设置为true   传统风格的param serialization

traditional属性更改了参数发送到服务器的方式。从jQuery 1.8开始,它默认为false。

对于ASP.NET MVC开发人员

$.ajax(url, {
   data : { a : [1,2,3] },
   traditional : true
}));

// `data` are sent as "a=1&a=2&a=3" 

如果traditional设置为false,则数据将以a%5B%5D=1&a%5B%5D=2&a%5B%5D=3

发送

根据neverever from this thread

改编的答案