簡體   English   中英

從選定的行中獲取所有記錄-Extjs

[英]Get all records from a selected row - Extjs

所以我在這里有控制器來返回單擊行的記錄:

...
this.control({
             'mylist': {
                cellclick: function(view, td, cellIndex, record, tr, rowIndex, e, eOpts) {
                        var id = record.get('ID');
                        var name = record.get('NAME');
                        var desc = record.get('DESC');
                        var view = record.get('VIEW');
...

我該如何動態遍歷mylistget所有字段並為每個字段分配一個變量(因為將來列的數量可能會增加)?

干杯!

如果您只想遍歷映射到已定義列的記錄字段,則可以執行以下操作:

cellclick: function(view, td, cellIndex, record, tr, rowIndex, e, eOpts) {

  var i,
      columns = view.panel.columns, 
      currentRecordKey,
      newRecord = {};

   for(i=0; i < columns.length; i++){

        currentRecordKey = columns[i].dataIndex;
        newRecord[currentRecordKey] = record.get(currentRecordKey)
   }

   //do something with new record
}

雖然此解決方案不會為每個鍵創建var ,但會創建一個包含當前記錄的所有值的映射,該映射具有相似的用途。 例如,您可以簡單地使用newRecord.id來獲取示例中記錄的id字段,它的作用與var聲明相同,因為如果該字段(地圖中的鍵)實際上沒有聲明,則該語句將失敗存在。 請記住,這與僅使用實際記錄本身減去記錄對象中的一些額外字段沒有太大區別。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM