Select DOJO Datagrid通过按钮删除行

Select DOJO Datagrid通过按钮删除行,select,button,datagrid,dojo,store,Select,Button,Datagrid,Dojo,Store,我有一个DOJO数据网格正在运行。它基于itemFileWriteStore 通过格式化程序函数,我添加了一个包含OnClick函数的按钮 获取属性“work\u id”(它在存储中) 进行Ajax调用以删除条目 将其从存储中删除并更新网格 代码如下: //BUTTON-FORMATTER function buttonFormatterRemove(){ var w = new Button({ label: "Löschen",

我有一个DOJO数据网格正在运行。它基于itemFileWriteStore

通过格式化程序函数,我添加了一个包含OnClick函数的按钮

  • 获取属性“work\u id”(它在存储中)
  • 进行Ajax调用以删除条目
  • 将其从存储中删除并更新网格
  • 代码如下:

        //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;
        }
    
    有人知道如何获得特定行中的工作id的句柄吗

    提前谢谢你!
    AFX

    我能够自己修复它:

    我意识到格式化程序有可选参数:

      //BUTTON-FORMATTER
         function buttonFormatterRemove(col, rowIndex){
    
    通过这些参数,我可以获得行的句柄:

            var rowdata = this.grid.getItem(rowIndex);
            var work_id = rowdata['work_id'];
    
    这篇博文对我帮助很大:

    无论如何谢谢你

            var rowdata = this.grid.getItem(rowIndex);
            var work_id = rowdata['work_id'];