Javascript 如何使表从AJAX成功变成dataTable()
我在原型网站的某些部分有一个dataTable()库,但没有ajax函数没有ajaxJavascript 如何使表从AJAX成功变成dataTable(),javascript,php,jquery,ajax,datatable,Javascript,Php,Jquery,Ajax,Datatable,我在原型网站的某些部分有一个dataTable()库,但没有ajax函数没有ajax <table id = 'mytable'> //some content </table> sample.php $output .= ' <table id = "usertable"> //some content </table>'; echo $output; $output.
<table id = 'mytable'>
//some content
</table>
sample.php
$output .= '
<table id = "usertable">
//some content
</table>';
echo $output;
$output.='
//一些内容
';
echo$输出;
如何使ajax成功响应成为数据表?您需要首先将html添加到dom中,然后创建数据表。你是在以另一种方式做这件事。当您创建datatable时,html在dom中还不可用,并且不会创建datatable
$.ajax({
url: "user.php",
method: "POST",
data: {id: id},
success: function(data) {
$('#myDiv').html(data); // Add html to the dom
$('#myDiv table').dataTable(); // Create the datatable
}
});
您可以通过另一种方式阅读来做您想做的事情…这将比您尝试做的事情要好。先生,谢谢您的帮助,但是这个方法不起作用,我使用您的方法尝试了好几次,但仍然没有使它成为一个datatable'Uncaught TypeError:Cannot set property'\u DT_CellIndex'的undefined at Ja(jquery.dataTables.min.js:24)在HTMLTableRowElement的N处(jquery.dataTables.min.js:16)。(jquery.dataTables.min.js:16)在jquery-1.12.4.js:142在Function.map(jquery-1.12.4.js:484)在jquery.fn.init.map(jquery-1.12.4.js:141)在oa(jquery.dataTables.min.js:16)在e(jquery.dataTables.min.js:92)在HTMLTableElement。(jquery.dataTables.min.js:93)在Function.each(jquery-1.12.4.js:370)中,这是因为html中有一个错误。Google上的一个简单搜索结果是:UncaughtTypeError:无法读取HTMLTableRowElement上Ka(jquery.dataTables.min.js:23)处未定义的属性“length”。(jquery.dataTables.min.js:16)在jquery-1.12.4.js:142在Function.map(jquery-1.12.4.js:484)在jquery.fn.init.map(jquery-1.12.4.js:141)在oa(jquery.dataTables.min.js:16)在e(jquery.dataTables.min.js:92)在HTMLTableElement。(jquery.dataTables.min.js:93)在Function.each(jquery-1.12.4.js:370)在jquery.fn.init.each(jquery-1.12.4.js:137)处
$.ajax({
url: "user.php",
method: "POST",
data: {id: id},
success: function(data) {
$('#myDiv').html(data); // Add html to the dom
$('#myDiv table').dataTable(); // Create the datatable
}
});