我正在使用datatables插件,我需要用ajax重新填充表。
所以我用ajax文件(以json形式)返回的数据填充表列,如代码show
$.get(select.data('url'), {article_category:select.val()}, function (data) {
if (data.error) {
alert(data.error);
}else{
var result = data.articles;
table = $('#datatable').DataTable( {
destroy: true,
data: result,
columns: [
{ data: 'id' },
{ data: 'article_code' },
{ data: 'article_name' },
{
data: 'article_amount',
className: {data: 'back'}
},
{ data: 'return_amount' },
{ data: 'article_price_ht' },
{ data: 'article_price_ttc' },
{ }
]
});
}
},'json');
我的问题是,当我在chrome中运行调试模式时,表中填充了除className之外的数据我有这个
<td class=" [object Object]">500</td>
我该如何编写className的代码?
修改 这就是我的json:
答案 0 :(得分:1)
您可以在表格填充后添加课程。
$('#example').dataTable( {
"columnDefs": [
{ className: "my_class", "targets": [ 0 ] }
]
} );
您正在将列my_class
添加到列索引 - 0或第1列。
$('#example').dataTable( {
"columnDefs": [
{ className: "my_class", "targets": [ 0 ] },
{ className: "my_class_1", "targets": [ 1 ] } //2nd column
]
} );
您必须链接json数据以填充表格。请记住,数据应该是数组形式的数组。
like,(链接到datasources)
{data:
[
[a,b,c],
[d,e,f]
]
}
答案 1 :(得分:0)
className应直接定义为不在对象内的字符串,因此您的代码应如下所示
columns: [
....
{
data: 'article_amount',
className: 'back',
},
....
]