2017-09-26 35 views
0

我使用的DataTable的插件在我的项目,但它显示了我一些警告信息数据表显示:数据表警告:表ID =的UserDetails - 请求的未知参数“1” 0行,第1列

数据表警告:表ID =的UserDetails - 请求的未知参数为行0,列1 '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调用

<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 我无法找出问题

+0

你也可以添加你的html。 – Rushee

+0

@Rushee更新了问题 –

+0

呃,colums应拼写'columns'?这可能是为什么DataTables正在推出,因为它没有列结构来映射传入的数据。 – Terry

回答

1

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

你需要做2条的修改:

  • 添加数据类型: 'JSON',你的AJAX调用,
  • 改变 'colums' 到 '列' 由@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> 
相关问题