2017-04-19 147 views
1

我想單擊Bootstrap-Table表格中的單元格,並獲取該行中特定列(Date列)的值。獲取點擊引導程序表格中單元格的值

此代碼讓我獲得該行的值索引,但我的數據是一個數組JSON s。我不認爲這個指數是有用的,因爲我認爲array基本上被認爲是無序的。有沒有辦法使用這個指數來獲得價值?

$("#table").on("click", "tr", function (row, $el, field) { 
    var row = $(this).index(); 
    alert(row); 
    }); 

數據:

var data = [ 
    { 
     "Date": "2015-02-03", 
     "Contact": 1 
    }, 
    { 
     "Date": "2017-01-22", 
     "Contact": 2 

    } 
]; 

http://jsfiddle.net/gv2mnwd9/

回答

1

您可以通過data屬性選擇Date單元格。

$("#table").on("click", "tr", function (row, $el, field) { 
    var date = $(this).find("a[data-name='Date']").html(); 
}); 

或者

$("#table").on("click", "tr", function (row, $el, field) { 
    var date = $(this).find("a[data-name='Date']").data('value'); 
}); 
+0

謝謝,如果我拿走'[data-name ='Date']'它也會產生正確的結果。那實際上在做什麼?有沒有辦法獲得列名? – user2242044

0

我覺得你可以做如下事情後評論>>道歉

answer = table.row(0).data().Date; 
answer = table.row(0).data().Contact; 

更新,如果我有誤解,我想你想要一個專欄的價值,我希望下面的作品滿足您的需求。

   $("#table").on("click", "tr", function (row, $el, field) { 

        tr = $(this).closest('tr'); 
        row = table.row(tr); 
        answer = table.row(row).data().Contact; 
        alert(answer); 
       }); 
+0

將此添加到警報不會產生任何結果。有什麼想法嗎? – user2242044

+0

嗨,我已經更新了我的答案 - 我希望可以滿足您的需求。 –

0

您可以附加一個事件到TD,而不是TR

,並獲得價值遵循

var col = $(this)[0].textContent; 

這裏是一個的jsfiddle

http://jsfiddle.net/gv2mnwd9/1/