Datables通过ajax创建列标题

时间:2017-06-02 06:44:29

标签: javascript php jquery ajax datatables

如何从ajax文件中创建标题?我正在尽我所能

$('#btntrack').on('click', function() {
            var KPNo = $('#KPNo').val();
            var dataString = 'KPNo='+ $('#KPNo').val();
            //console.log(dataString);
            $.ajax({
                type: "GET",
                url: host+"ajax/tracking/kp",
                data: dataString,
                dataType: 'json',    
                "success": function(json) {
                    var tableHeaders;
                    $.each(json.data[0], function(i, val){
                        tableHeaders += "<th>" + val + "</th>";
                    });

                    $("#tableDiv").empty();
                    $("#tableDiv").append('<table id="tbltrackkp" class="dataTable table table-bordered table-hover table-full-width" cellspacing="0" data-table="kp" width="100%"><thead><tr>' + tableHeaders + '</tr></thead></table>');

好的是,但是当我添加这些代码时

$('#tbltrackkp').find('tbody').on('click', 'td.details-control', function () {
                        var code = $(this).find('a').attr('id-kp');
                        var modal = $('.bs-modal-lg');
                        var modalData = jQuery.parseJSON(ajaxPOST(code,'ajax/actionkp',null,true));

                        modal.find('.modal-title').html(modalData.title);
                        modal.find('.modal-body').html(modalData.body);
                        modal.find('.modal-footer').html(modalData.footer);

                        modal.modal('show');
                    });

根本不工作,我需要在每个td tbody上显示模态,但是没有发生,即使在网络(inpsect元素)中,也没有得到链接动作。我该如何做?

你没看错我的问题!!我使用数据和那些不使用数据表的问题,是个不错的老兄!

更新现在正在运行,我在标记上编辑每个td我添加id =&#34; trackingaction&#34;,并且在jquery上我将tbltrackkp上的jquery函数更改为{ {1}}

Oluwafemi Sule的Tq

1 个答案:

答案 0 :(得分:0)

由于#tbltrackkp已动态插入到文档中,$('#tbltrackkp').find('tbody').on('click', '...无法注册,因为它在运行时不存在。

您可以将侦听器设置为正文,并且仅在以这种方式传播到您的选择时调用处理程序:

$('body').on('click', '#tbltrackkp tbody td.details-control', function () { ... }