ajax传递数组后台接收不到值的问题


背景:

    JQGrid需要进行批量删除操作传给后台的是数组,结果后台接收不到值。    

后台语言:java

原因:

ajax传递参数时,traditional 默认为false,JQuery会深度序列化参数对象,为了适应别的框架,但是Servelt API 无法处理,所以我们要设置 traditional 的值为ture,使其进行传统的序列化方式。

            $.ajax({
                type: 'post',
                url: '#',
                traditional:true,             //必须加!!!!!!需要这个值为true进行阻止深度序列化。
                data:{'userids':userids,'roleid':roleid},
                success: function(data) {
                    
                    }
                }
            });

  

官方文档解释:

官方文档的解释如下:
traditional 
类型:Boolean
如果你想要用传统的方式来序列化数据,那么就设置为 true。
Set this to true if you wish to use the traditional style of param serialization

 

参考:

http://blog.csdn.net/ojackhao/article/details/24580437

https://my.oschina.net/i33/blog/119506


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM