这里我有谷歌可视化数据表:
所以我有这个代码:
function drawTroskovnik() {
// Create and populate the data table.
var JSONObject = $.ajax({
url: 'getTroskovnik.php', // make this url point to the data file
dataType: 'json',
data:{id_akt:ajdi},
async: false,
type: 'POST',
}).responseText;
var data = new google.visualization.DataTable(JSONObject, 0.5);
for (var y = 0, maxrows = data.getNumberOfRows(); y < maxrows; y++) {
for (var x = 1, maxcols = data.getNumberOfColumns(); x < maxcols; x++) {
data.setValue(y, x, '<input id="costRedovi" class="form-control" value="'+data.getValue(y,x)+'">');
}
}
for (var y = 0, maxrows = data.getNumberOfRows(); y < maxrows; y++) {
data.setValue(y, 0, '<input class="span2 form-control" id="pocetak1" size="16" type="text" value="'+data.getValue(y,0)+'" readonly>');
}
data.addColumn('string', 'Kontrole');
for (var y = 0, maxrows = data.getNumberOfRows(); y < maxrows; y++) {
var mc= data.getNumberOfColumns()-1;
data.setValue(y, mc, '<a data-toggle="modal" data-target="#update" href="#" class="btn btn-success"><i class="fa fa-pencil"></i> Details</a>');
}
new google.visualization.events.addListener(table, 'ready', function () {
google.visualization.events.addListener(table.getChart(), 'select', function () {
var selection = table.getChart().getSelection();
//HOW TO GET LABEL of COLUMN an DATE from row so to use it in ajax submit
$( "#costRedovi" ).focusout(function() {
$.ajax({
url: "update.php",
type: "POST",
async: true,
data: { columnName:HOW_to_get_column_name,datum:How_to_get_date_from_row_where_is_selected_cell?},
dataType: "html",
success: function(data) {
console.log(data);
},
});
})
}
});
});
// Create and draw the visualization.
visualization = new google.visualization.Table(document.getElementById('tpltroskovnik'));
visualization.draw(data, {'allowHtml': true, cssClassNames: 'nn' }});
}
我需要做什么?
现在我将每个单元格值放入输入字段,因此我可以更改它。我希望在 .focusout
上运行 .ajax
函数来更新
数据库中的数据,但要做到这一点,我需要获取列标签姓名和日期
(正如您在照片上看到的 - 日期是行中的“0”位置...)
如何获取焦点所在单元格的列标签名称和日期?
最佳答案
您需要做的是对您放入选择处理程序表中的数据调用getValue
。相关代码为:
var row = table.getSelection()[0].row;
console.log(data.getValue(row,0));
看看这个 fiddle ,如果您有更多问题,请告诉我:
关于javascript - GetColumnLabel名称并运行ajax函数 - google viz datatable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22623089/