我正在使用DataTables JavaScript库渲染一些表,这些表显示了射箭比赛的各个结果。可以在此处找到一个示例:http://www.archerytoolkit.net/maast/individual_results.php?p=1
您可以在页面上看到小的散点图。这些链接到另一个站点,在该站点中我以图表形式显示了表中的数据。紧随“蒂姆·威尔逊的个人成绩”之后的第一名很好。我还想将图形链接到直接与每个射箭回合的结果相关的页面。这些URL的格式为: http://www.archerytoolkit.net/maast/individual_results.php?p=1&r=1
我已经向DataTables javascript的rowGroup部分添加了一个render函数,但是我不知道如何访问行本身中存在的数据。数据中的每一行都有一个名为“ round_id”的元素,这是我需要在上面的URL中包含的数字(“ r =“部分)。该组中的每一行将具有相同的round_id。
$(document).ready( function () {
$("#individual_results").DataTable( {
ajax: "./js/individual_results-json.php?p=<?=$person_id?>",
columns: [
{"data": "round_id"},
{"data": "round"},
{"data": "division"},
{"data": "score"},
{"data": "x_count"},
{"data": "event_date"},
{"data": "event_name"}
],
columnDefs: [
{
targets: [0, 1, 4],
visible: false
},
{
targets: 2,
render: function ( data, type, full, meta ) {
return '<a href="./individual_rankings.php?r='+full.round_id+'&d='+encodeURIComponent(data)+'">'+data+'</a>';
}
},
{
targets: 3,
className: "dt-body-center",
render: function ( data, type, full, meta ) {
if (full.x_count === null) {
return data;
} else {
return data+' '+full.x_count+'X';
} }
},
{
targets: 5,
className: "dt-body-center"
}
],
rowGroup: {
startRender: function ( rows, group ) {
return group+' <a href="http://archerytoolkit.net/shiny/maast-dashboard/?p=<?=$person_id?>"><img src="./i/scatterplot_blk.png" height="15" width="15" /></a></h1>';
},
dataSrc: "round"
},
responsive: false,
fixedHeader: true,
paging: true,
pageLength: 25,
ordering: false,
info: true,
searching: true
} );
} );
因此render函数需要返回如下内容:
return group+' <a href="http://archerytoolkit.net/shiny/maast-dashboard/?p=<?=$person_id?>&r='+[[INSERT ROUND_ID HERE]]+'"><img src="./i/scatterplot_blk.png" height="15" width="15" /></a></h1>';
如何从rowGroup渲染功能访问数据元素?