Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 重新加载剑道ui网格行项目代码时执行错误_Javascript_Jquery_Backbone.js_Kendo Ui_Kendo Grid - Fatal编程技术网

Javascript 重新加载剑道ui网格行项目代码时执行错误

Javascript 重新加载剑道ui网格行项目代码时执行错误,javascript,jquery,backbone.js,kendo-ui,kendo-grid,Javascript,Jquery,Backbone.js,Kendo Ui,Kendo Grid,我有一个带有剑道ui网格的web应用程序。当我单击一个按钮时,网格将加载Bakbone.js,我可以删除一行代码如下: $(document).on("click", "#grid tbody tr .ob-delete", function (e) { var item = grid.dataItem($(this).closest("tr")); var check = confirm("Do I delete:" + item.City ); if (check)

我有一个带有剑道ui网格的web应用程序。当我单击一个按钮时,网格将加载Bakbone.js,我可以删除一行代码如下:

$(document).on("click", "#grid tbody tr .ob-delete", function (e) {
    var item = grid.dataItem($(this).closest("tr"));
    var check = confirm("Do I delete:" + item.City );
    if (check) {
        grid.removeRow($(this).closest("tr"));
    }
});
要删除的按钮的配置:

 command: [
            "edit", {
            name: "destroy",
            text: "Remove",
            className: "ob-delete"
        }]
当我按下按钮重新加载内容(网格)时,如果我想删除一行,
item.City
会产生一个错误

完整的例子

编辑: 解决了的!感谢@Whizkid747

加上

command: [ "edit",{ 
      //...
      click: deleteRow
}] 
然后,单击按钮时,调用一个函数:

function deleteRow(e){
        var item = this.dataItem($(e.currentTarget).closest("tr"));
         var check = confirm("Do I delete:" + item.City );
        if (check) {
            grid.removeRow($(e.currentTarget).closest("tr"));
        }
    } 

不确定,但您的网格实际上不是同一个网格,而是创建了旧的(重新加载之前)一个和第二个网格

以下行已更改:

var item = $('#grid').data().kendoGrid.dataItem($(this).closest("tr"));


我建议您通过该方法更改数据,而不是重新创建网格。或者更改您的逻辑,以便在重新创建小部件之前实际小部件。

它似乎已解决,但添加了更多内容,它会重复确认多次。带有另一个按钮的示例可以使用上面提到的按钮更新网格删除代码。如果它仍然不起作用,我会看一看。