我正在使用Google的表功能,我希望将id的值分配给所创建的每一行的tr,我有如下数组
var data = google.visualization.arrayToDataTable([
['Name', 'Donuts eaten','id'],
['Michael' , 5,'1'],
['Elisa', 7,'2'],
['Robert', 3,'3'],
['John', 2,'4'],
['Jessica', 6,'5'],
['Aaron', 1,'6'],
['Margareth', 8,'7']
]);
var table = new google.visualization.ChartWrapper({
'chartType': 'Table',
'containerId': 'chart2',
dataTable: data,
'options': {
'width': '500px'
}
});
table.draw();我仍然无法确定是否有某种方法将值绑定到DOM元素,任何帮助都会受到赞赏。
发布于 2013-12-29 14:41:15
这里有一个解决方案,使用JQuery:
google.visualization.events.addListener(table, 'ready', function () {
$('#chart2 .google-visualization-table-tr-odd, #chart2 .google-visualization-table-tr-even').each(function (e) {
var idx = $('td:nth-child(2)', this).html();
$(this).attr('id', 'row' + idx);
});
});并删除ID列:
google.visualization.events.addListener(table, 'ready', function () {
$('.google-visualization-table-tr-head td:nth-child(3)').remove();
$('#chart2 .google-visualization-table-tr-odd, #chart2 .google-visualization-table-tr-even').each(function (e) {
var td = $('td:nth-child(2)', this)
var idx = td.html();
td.remove();
$(this).attr('id', 'row' + idx);
});
});考虑到排序:
function tableCleanUp() {
google.visualization.events.addListener(table.getChart(), 'sort', tableCleanUp2);
tableCleanUp2();
}
function tableCleanUp2() {
$('.google-visualization-table-tr-head td:nth-child(3)').remove();
$('#chart2 .google-visualization-table-tr-odd, #chart2 .google-visualization-table-tr-even').each(function (e) {
var td = $('td:nth-child(2)', this)
var idx = td.html();
td.remove();
$(this).attr('id', 'row' + idx);
});
}
google.visualization.events.addListener(table, 'ready', tableCleanUp);发布于 2013-12-18 16:24:35
表可视化中不支持将ID分配给tr,您必须手动解析创建的HTML才能适当地设置它们。
发布于 2013-12-18 13:38:19
最简单的形式是: tr.id = containerId;
https://stackoverflow.com/questions/20659635
复制相似问题