Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery datatable设置成功回调中的列设计和值_Javascript_Jquery_Html_Ajax_Datatables - Fatal编程技术网

Javascript jQuery datatable设置成功回调中的列设计和值

Javascript jQuery datatable设置成功回调中的列设计和值,javascript,jquery,html,ajax,datatables,Javascript,Jquery,Html,Ajax,Datatables,我已经为我的datatables编写了以下代码,它用数据库中的内容填充表,如下所示: if (datatable != null) datatable.destroy(); datatable = $('#tableProducts').DataTable({ "pageLength": 50, "bLengthChange": false, "processing": true,

我已经为我的datatables编写了以下代码,它用数据库中的内容填充表,如下所示:

 if (datatable != null)
            datatable.destroy();

        datatable = $('#tableProducts').DataTable({
            "pageLength": 50,
            "bLengthChange": false,
            "processing": true,
            "serverSide": true,
            "filter": true,
            "orderMulti": false,
            "bSort": false,
            "ajax": {
                "url": "/Bulk/LoadData/",
                "type": "POST",
                "data": {
                    "username": $(".sellerInput").val(),
                    "drange": $(".select2").val()
                },
                success: function (data) {
                }
            },
            "columns": [
                      {
                          "targets": -1,
                          "data": "ImageURL",
                          "name": "Title",
                          "render": function (data, type, row) {
                              return '<td><img src=' + data + '></td>';
                          },
                          "autoWidth": true
                      },
                {
                    "data": "Sales",
                    "name": "QuantitySold",
                    "render": function (data, type, row) {

                        return '<td>' + data + '</td>'
                    },
                },
                 {
                     "data": "CurrentPrice",
                     "name": "CurrenctPrice",
                     "render": function (data, type, row) {

                         return '<td> <b>$ ' + data + '</b></td>'
                     },
                 }
            ]
        });
这里的问题是,如果我指定成功回调,然后更新HTML页面的其他部分,那么datatable不会在DB中加载数据

我的问题是,如果我重写datatable的成功回调函数以更新HTML页面的更多部分而不仅仅是datatable本身,那么如何手动指定datatable的数据源

有人能帮我吗?

来自:

success-不能被重写,因为它在中内部使用 数据表。操作/转换服务器返回的数据 使用ajax.dataSrc

所以简单地使用

ajax: {
   url: "/Bulk/LoadData/",
   type: "POST",
   data: {
     "username": $(".sellerInput").val(),
     "drange": $(".select2").val()
   },
   dataSrc: function (data) {
     // some custom code here and + filling up datatable with data from my DB...
     return data
   }
},

相反。

您可以使用
dataSrc
而不是
success
来获取响应数据

试试这个:

"ajax": {
       "url": "/Bulk/LoadData/",
       "type": "POST",
       "data": function (d){
                d.username: $(".sellerInput").val(),
                d.drange: $(".select2").val()
       },
       "dataSrc": function (data) {
               // some custom code here and + filling up datatable with data from my DB...
            console.log(data);
            return data;
       }
   },
注意:您还试图以
用户名
drange
的形式发送额外的参数,因此在DataTable中,我们应该使用
“data”:函数(d){
作为发送额外参数的函数


为什么要返回数据?我想用这些数据更新HTML。我不能这样做吗(例如):$(“#Title”).text(data.Title);或类似的内容?检查以操作数据并返回是处理datatable中的数据所必需的哦,好的,我现在明白了。但返回的一些数据用于操作我页面的其他部分,而不仅仅是datatable:D@User987确切地说:)还要检查如何使用数据作为函数发送额外的数据参数。太多了,辛格,我的朋友今天挣点有用的东西!=D好的。我用这种方法测试了一下,但它说它期望?
"ajax": {
       "url": "/Bulk/LoadData/",
       "type": "POST",
       "data": function (d){
                d.username: $(".sellerInput").val(),
                d.drange: $(".select2").val()
       },
       "dataSrc": function (data) {
               // some custom code here and + filling up datatable with data from my DB...
            console.log(data);
            return data;
       }
   },