【发布时间】:2016-02-24 16:58:13
【问题描述】:
我正在尝试使用 Jquery 的 DataTables 库将一些简单的数据发布到作为 SQL 查询的控制器。此查询将返回 JSON,我将继续我的快乐之路,然后对数据做我想做的事情。
在使用内置 jquery AJAX 时,我对此没有任何问题。这是工作代码:
$.post('/rx/dostuff', {fromDate: from_date, toDate: to_date}, function(data){
var dataObject = JSON.parse(data);
if(data !== "[]"){
$("#display_area").empty();
$("#display_area").append("<div> " + ...
blah blah blah
所以这很好用,我发布了 from_date 和 to_date,我可以在 Network Params 选项卡中看到它被发送为
fromDate: 02/01/2016
toDate: 02/24/2016
我的 PHP 控制器接收到它,我做了一些语句绑定以保证它的安全,然后,我的结果以 JSON 编码返回给我。
当我尝试使用 DataTables 库执行此操作时,我的参数最终会像这样发送:
fromDate=02%2F01%2F2016&toDate=02%2F24%2F2016
PHP 引发了地狱,并发出警告说我的控制器缺少参数 1。
我的问题是,为什么 DataTables 会这样发送参数?我的发送方式是否错误?
这是我的 DataTables AJAX 代码:
$('#dataTable').DataTable({
ajax: {
url: "/rx/dostuff",
type: "POST",
contentType: "application/json",
data: {
"fromDate": from_date,
"toDate": to_date
}
},
columns: [
{ data: 'col'},
{ data: 'col'},
{ data: 'col'},
{ data: 'col'}
]
});
非常感谢任何帮助!
【问题讨论】:
标签: jquery json ajax post datatables