ajax.dataSrc的数据表不工作
ajax.dataSrc for datatables not working
我试图使用dataSrc属性或操作方法表数据。为了了解如何操作数据,我尝试了下面这个简单的代码。
test.php
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/r/bs-3.3.5/jq-2.1.4,dt-1.10.8/datatables.min.css"/>
<script type="text/javascript" src="https://cdn.datatables.net/r/bs-3.3.5/jqc-1.11.3,dt-1.10.8/datatables.min.js"></script>
</head>
<body>
<br /><br />
<div class="container">
<table id="data-table" class="table table-bordered">
<thead>
<tr>
<th>Mobile</th>
<th>Name</th>
<th>Email</th>
<th>Credits</th>
</tr>
</thead>
</table>
</div>
</body>
</html>
<script>
$(document).ready(function(){
$('#data-table').DataTable({
"ajax" : {
"dataSrc": function ( json ) {
var array = {};
for ( var i=0, ien=json.length ; i<ien ; i++ ) {
array[i] = json[i];//'<a href="/message/'+json[i][0]+'>View message</a>';
}
console.log(json);
console.log(JSON.stringify(json));
return (JSON.stringify(json));
}
},
"columns" : [
{ "data" : "Mobile",
"defaultContent": "<i>Not set</i>"},
{ "data" : "Name",
"defaultContent": "<i>Not set</i>"},
{ "data" : "Email",
"defaultContent": "<i>Not set</i>"},
{ "data" : "Credits",
"defaultContent": "<i>Not set</i>"},
]
});
});
</script>
当我运行localhost/test.php
Mobile Name Email Credits
Not set Not set Not set Not set
Not set Not set Not set Not set
Not set Not set Not set Not set
然而,数据。json:
{
"data": [{
"Mobile": "1234567890",
"Name": "test",
"Email": "test@gmail.com",
"Credits": "50",
}, {
"Mobile": "8200469963",
"Name": "amit",
"Email": "adsf@gmail.com",
"Credits": "0",
}, {
"Mobile": "8989899889",
"Name": "sdfsd",
"Email": "sdfsd",
"Credits": "100",
}, {
"Mobile": "9889812580",
"Name": "box",
"Email": "asdfadfs@gmail.com",
"Credits": "98",
}, {
"Mobile": "9999999999",
"Name": "user9",
"Email": "user9@gmail.com",
"Credits": "0",
}]
}
另外,如果我完全删除dataSrc部分。我得到了合适的结果。我在dataSrc做错了什么?
当您删除dataSrc组件时,您将其设置为作为数组读取数据。您只是没有指定需要使用json.data
而不是json
的数据对象。
$('#data-table').dataTable( {
"ajax": {
"url": "data.json",
"dataSrc": function ( json ) {
for ( var i=0, ien=json.data.length ; i<ien ; i++ ) {
json.data[i][0] = '<a href="/message/'+json.data[i][0]+'>View message</a>';
}
return json.data;
}
}
} );
希望这对你有帮助!
如果你只需要为电子邮件地址创建链接,请不要使用dataSrc
。删除dataSrc
并使用columns.render
选项。
相关文章:
- 数据表 + 列搜索 + 整体搜索协同工作 + 服务器端处理
- 数据表自动生成的序列号无法正常工作.对于每一页
- 数据表中的FixedHead没有'删除分页后无法工作
- JQuery 数据表列数据更新工作太慢
- 数据表正则表达式搜索无法按预期工作以实现完全匹配
- aa数据表中的排序无法正常工作
- 无法让数据表与 Django 生成的表一起工作
- 引导工具提示不't在与第一个数据表不同的页面中工作
- 使用jQuery来突出显示不工作的数据表行
- JQuery .on('click')不工作在数据表第二页或行过去11
- 数据表中所有页面总量不工作,只工作当前页面
- 数据表过滤&行高亮不能一起工作
- ajax.dataSrc的数据表不工作
- 在ajax后绘制的数据表上单击事件,该数据表不能从第二页工作
- 具有数据表搜索功能的Daterangepicker无法工作
- 从数据表行打印工作表而不首先打开它
- 数据表插件css不工作
- Javascript在数据表过滤或分页之后不工作
- Vue js和数据表导航不工作
- 哪些文件需要的数据表工作的html页面>