javascript - 如何在单击功能时将 json 加载到 jquery 上的数据表?

标签 javascript jquery json datatable datatables

我有这样的 json 数据,现在只要根据发送值单击搜索按钮,我就需要将此 json 数据输入到数据表中。

[
{
       "port_code":"BOM",
       "cont_details_id":"9",
       "price":"44.000",
       "cont_price":"500",
       "cont_no":"11",
       "cont_size":"20",
       "cont_type":"GP"
},
{
       "port_code":"BOM",
       "cont_details_id":"10",
       "price":"87.000",
       "cont_price":"500",
       "cont_no":"22",
       "cont_size":"20",
       "cont_type":"GP"        
},
.....
.....
etc.,
]

这就是我在 jquery 中尝试存储 json $("#search").click(function() 在此函数中我正在调用 json 文件并尝试存储在数据表中,但是它不起作用。请有人帮助我。谢谢。

$(document).ready(function() 
    {

    var oTable = $('#example').DataTable();

    $("#search").click(function()
    {
        $.post("invoice_ajax.php",
        {
            loc  : $("#location").val(),
            cust : $("#customer_details_id").val()
        },
        function(data)
        {
            $("#text").html(data);
            var s = JSON.parse(data);

                        for(var i = 0; i < s.length; i++) 
                        {   
                            oTable.fnAddData([
                            s[i].block_id,
                            s[i].block_id,
                            s[i].block_id,
                            s[i].block_id,
                            s[i].block_id,
                            s[i].block_id,
                            s[i].block_id
                            ]);
                        } // End For
        });
    }); 


    });

最佳答案

您几乎是对的,只是您在 1.10.x API 上使用旧的 1.9.x fnAddData 方法。改为执行此操作:

oTable.row.add([
   s[i].port_code,
   s[i].cont_details_id,
   s[i].price,
   s[i].cont_price,
   s[i].cont_no,
   s[i].cont_size,
   s[i].cont_type
]).draw();

var oTable = $('#example').dataTable();
...
oTable.fnAddData([
   s[i].port_code,
   s[i].cont_details_id,
   s[i].price,
   s[i].cont_price,
   s[i].cont_no,
   s[i].cont_size,
   s[i].cont_type
]);

关于javascript - 如何在单击功能时将 json 加载到 jquery 上的数据表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29944119/

相关文章:

javascript - 使用jQuery或纯JS获取多选框的值

javascript - 为什么 Soundmanager 2 不在 firefox (23) 中触发 onload 事件?

javascript - 是否可以在对象的默认 getter/setter 上应用猴子补丁?

javascript - Webkit 仅在调整大小时应用动态加载的 css 样式(通过 ajax)

.net - JSON 日期序列化和时区

javascript - 通过 jQuery,on() 将 jQuery 插件调用附加到动态加载的元素

javascript - 鼠标松开、鼠标按下功能的更快编码

jquery - 如何使用 jQuery 附加 HTML

java - 如何从数据库中检索数组

java - JSON 中出错