我有一个Web应用程序,它使用带有ajax回调的jquery DataTables搜索/排序数据服务器端。我正在使用aoData.push
推送一些补充数据。数据值之一是多选框的值,因此它是一个javascript数组,因此推送看起来像
aoData.push({name:"multiselect",value:$('#multiselect').val()});
在
DataTables 1.9.1
中,在ajax请求的GET参数中,multiselect
最终以逗号分隔的列表结尾,即&multiselect=1,2,3
我已经更新到版本1.10,现在该值实际上已作为数组发送:
&multiselect[]=1&multiselect[]=2&multiselect[]=3
我希望它返回到一个逗号分隔的列表,因为这是服务器端
php
代码所期望的,并且我无权访问。我没有对HTML或DataTables初始化进行任何更改,只是将
jquery.dataTables.js
包含文件更新为较新的版本。如何告诉DataTables将多选数据作为逗号分隔的列表而不是数组发送到服务器?
最佳答案
您可以通过设置$.fn.dataTable.ext.legacy.ajax = true
强制数据表1.10使用1.9样式的发送服务器参数。
http://www.datatables.net/manual/server-side#Legacy