我想創建一個隱藏的列,將包含該行的唯一「id」作爲屬性中的一個「data-id」之一。因爲我似乎無法弄清楚如何檢索行後面的數據模型。我正在使用服務器端數據源。如何隱藏在fuelux datagrid列
columns: [{
property: 'hiddencolumn',
label: '',
hidden: true <-- ?????
} .. .. ],
在我使用一些佔位符標記格式,可能是一個跨度
$.each(items, function(index, item) {
item.hiddencolumn = '<span data-id="' + item.id + '"</span>';
});
然後我點擊處理程序添加到該行,然後獲取數據-ID列:
$('#MyGrid').on('loaded', function() {
$('#MyGrid > tbody > tr').click(function() {
console.log($(this).find('> td > span').attr('data-id'));
});
});
這是正確的嗎?或者,我應該嘗試將數據ID添加到tr標籤/行本身?上述概念的作品,但我只需要知道如何隱藏列:)
感謝
編輯4月14日 - 這是我做來解決這個問題。使用data-id並將該跨度隱藏在現有列中。對我而言,我的模型中有一個「日期」和「ID」字段。我選擇將id標記到日期字段上。
formatter: function(items) {
$.each(items, function(index, item) {
item.date = item.date + '<span style="visibility: hidden;" data-id="' + item.id + '"/>';
});
}
然後檢索像這樣(使用jQuery)
$('#MyGrid').on('loaded', function() {
$('#MyGrid > tbody > tr').click(function() {
console.log($(this).find('> td > span').attr('data-id')); // value is here
});
});
確定的ID?
Thx mate!這就像一個魅力:) 事實上,我並不需要隱藏任何東西,只是將item.id的值傳遞給函數內的另一個格式化程序,我很好走! 乾杯 – dan 2015-02-03 02:55:58