2017-01-16 24 views
0

我有劍道網格已分組的列頭(兩個頭)與數據源綁定。我正在使用下面的代碼來獲得正常工作的單頭行網格的列索引。如何獲得分組列(多頭)中的特定列的索引Kendo網格

dataBound: function (e) { 
      var grid = e.sender; 
      var rows = grid.tbody.children(); 
      var dataItem = grid.dataItem(rows[0]); 
      var priColIndex = grid.wrapper.find(".k-grid-header [data-field=FromDemandQty]").index(); 
      var cell = row.children().eq(priColIndex); 

      if (dataItem.FromDemandQty < 0) 
       cell.addClass('stkShort'); 
      else 
       cell.addClass('stkExcess'); 
} 

但是,當我的劍道網格有兩個標題行時,這不起作用。以下是我的劍道網格的屏幕截圖。上面提到的代碼返回索引爲1時,我實際上試圖獲得圖像中的過量/短列的索引,看起來它是一個新的組啓動時重置索引(組名稱:請求者數據,請參考圖像)

enter image description here

+0

嗯所以我想明白你在問什麼。你想獲得行或列嗎?哪一列是你得到的列,哪一列是你需要的?他們是否分組? – Keith

+0

@Keith,實際上我的一些kendo網格中的列被分組(合併爲標題頭)。我需要根據某些條件獲取「Excess/Short」列的索引以設置該列的類。請參考附件圖片。當我使用上面提到的代碼時,它返回1作爲索引,但實際上索引是6.所以我正在尋求幫助來獲得該列的實際索引。 –

回答

0

最後我得到了解決方案。這兩個在我的問題

Insteed直接走索引中提到的情況下工作,需要採取列的數據集的指數

現有代碼:

var priColIndex = grid.wrapper.find(".k-grid-header [data-field=FromDemandQty]").index(); 
     var cell = row.children().eq(priColIndex); 

     if (dataItem.FromDemandQty < 0) 
      cell.addClass('stkShort'); 
     else 
      cell.addClass('stkExcess'); 

應該改變:

var fromDemCell = grid.wrapper.find(".k-grid-header [data-field=FromDemandQty]"); 
        if (fromDemCell.length > 0) { 
         var priColIndex = parseInt(fromDemCell[0].dataset.index); 
         var cell = row.children().eq(priColIndex); 
         if (dataItem.FromDemandQty < 0) { 
          cell.addClass('stkShort'); 
         } 
         else 
          cell.addClass('stkExcess'); 
        } 
相關問題