数据表显示:DataTables警告:table id = userdetails - 请求的未知参数' 1'对于第0行,第1列

时间:2017-09-26 06:26:58

标签: javascript jquery wordpress datatable

我在我的项目中使用了datatable插件,但它向我显示了一些警告消息

  

DataTables警告:table id = userdetails - 请求的未知参数   ' 1'对于第0行,第1列。有关此错误的更多信息,请   见http://datatables.net/tn/4

代码是: Html代码:

<table id="userdetails">
    <thead>
        <tr>
            <td>User Login</td>
            <td>User NiceName</td>
            <td>Email</td>
            <td>Register Date</td>
        </tr>
    </thead>
<table> 

ajax call

<script>
    jQuery.ajax({
        type : 'POST',
        data : {tableName:table_name},
        url: '<?php echo plugins_url() . '/pagination/ajaxResponse.php'; ?>',
        success: function(data){
            jQuery("#userdetails").dataTable({
                    data:data,
                    colums:[
                        {'data':'user_login'},
                        {'data': 'user_nicename'},
                        {'data': 'user_email'},
                        {'data': 'user_registered'},
                    ]
                })
        }
    })

</script>

服务器代码:

$result = $wpdb->get_results("SELECT user_login,user_nicename,user_email,user_registered from ".$_POST['tableName']);
        echo json_encode($result);

性反应: enter image description here 我无法弄清楚问题

2 个答案:

答案 0 :(得分:1)

虽然您是从PHP文件以JSON格式发送数据,但您需要在AJAX调用中将其接受为JSON。

您需要做两次修改:

  • dataType:&#39; json&#39; 添加到您的AJAX通话中
  • 更改&#39; colums&#39;到了&#39;列&#39;正如@Terry
  • 所建议的那样

<强>即。您的AJAX调用应如下所示:

    <script>
    jQuery.ajax({
        type : 'POST',
        data : {tableName:table_name},
        dataType:'json',
        url: '<?php echo plugins_url() . '/pagination/ajaxResponse.php'; ?>',
        success: function(data){
            jQuery("#userdetails").dataTable({
                    data:data,
                    columns:[
                        {'data':'user_login'},
                        {'data': 'user_nicename'},
                        {'data': 'user_email'},
                        {'data': 'user_registered'},
                    ]
                })
        }
    })

</script>

答案 1 :(得分:0)

插入此代码JS ajax以添加错误句柄。还可以从entityframework获取正确的json。

jQuery.ajax({
    type: 'GET',
    dataType: 'json',
    url: 'https://localhost:44361/api/car',
    success: function (data) {
        var data = jQuery.parseJSON(data); 
        console.log(data);
        jQuery("#tableAPI").dataTable({
            data: data,
            columns: [
                { 'data': 'vin' },
                { 'data': 'marca' },
                { 'data': 'tipo' },
                { 'data': 'fechaEmsablado' }
            ]
        })
    },
    error: function(e,message){
        jQuery("#tableAPI").dataTable({

        }),
        alert(message);
    }

})