关于datatable ajax向后端参,search始终为空的wen'ti

我尝试利用ajax向后端传递搜索的参数,后端得到的search参数始终为空值
具体js代码如下

const table = $('#weatherTable').DataTable({
    bFilter: false,
    "processing": true,
    serverSide: true,
    ajax: {
        url: "",
        type: "post",
        data: function (data) {
            return JSON.stringify(data);
        }
    }
});
$("#searchLocation").on('keyup',function () {
    var location = this.value;
    table.search(location).draw();
});

我后端每次在输入框输入值都有一条ajax请求过去,但是不管输入什么值,search参数的值始终为空,不知道为什么。

图片说明
注意这个value始终为空值
ji'qiu

2个回答

要看看你的 datatable 传递的写法是什么,一般通过 post 请求的话,需要指定特定的属性,否则直接将参数加在 URL 后面用 get 方法传递。
datatables post 传递参数的方法:

return $("#"+tableId).DataTable({
        "dom": 'lrtip',
        "searching": false,
        "paging": true,
        "processing": true,
        "serverSide":true,
        "sAjaxSource": CPATH+url,
       "ajax":{//ajax自定义的请求参数
                data:data
        },
                后面。。。。

在 return JSON.stringify(data); 前面加个debugger 看看data 里面value有没有值没有就 在全局搞个变量把this.value赋给全局变量
再return JSON.stringify(data);前面赋值

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问