2012-10-30 78 views
2

我有一個DOJO Datagrid啓動並運行。它基於itemFileWriteStore。DOJO Datagrid通過按鈕刪除行

通過格式化功能我添加包括的OnClick-功能的按鈕來

  1. 獲取屬性「work_id」(這是在商店)
  2. 做一個Ajax調用刪除進入
  3. 從商店刪除並更新電網

下面的代碼:

//BUTTON-FORMATTER 
    function buttonFormatterRemove(){ 
     var w = new Button({ 
      label: "Löschen", 
      iconClass: "dijitEditorIcon deleteIcon", 
      showLabel: false, 
      onClick: function() { 
        console.log(this); 
        if (confirm("Datensatz wirklich löschen?")){ 

         var item = grid.selection.getSelected(); 
         var work_id = grid.store.getValue(item[0], "work_id"); 
         //alert(work_id); 

         //FIRE REQUEST 
          request.post("<?php echo site_url('work/delete'); ?>/"+work_id, { 

           }).then(function(text){ 
            if(text == 1){ 
               console.log("Entry with ID"+work_id+" deleted!") 
               workStore.deleteItem(item[0]); 
               grid.startup(); 
            } else alert("Es ist ein Fehler aufgetreten"); 
           });  
        }   

      } 
     }); 
     w._destroyOnRemove=true; 
     return w; 
    } 

到目前爲止這麼好...它的作品!但只有當我點擊數據網格之前。無論我點擊的地方如何。

如果我刷新頁面,直接點擊該按鈕,它拋出:

Uncaught Error: dojo.data.ItemFileWriteStore: Invalid item argument. 

有誰知道如何得到一個處理特定的行work_id?

預先感謝您! AFX

回答

相關問題