Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.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 当焦点进入新行时,平滑网格增加行的Id字段_Javascript_Jquery_Asp.net Mvc 4_Slickgrid - Fatal编程技术网

Javascript 当焦点进入新行时,平滑网格增加行的Id字段

Javascript 当焦点进入新行时,平滑网格增加行的Id字段,javascript,jquery,asp.net-mvc-4,slickgrid,Javascript,Jquery,Asp.net Mvc 4,Slickgrid,我使用的是SlickGrid,我有3个coulmns,其中第一列是Id列,必须保持唯一(可编辑),我还想在焦点进入新行时自动增加每行的Id字段。在表单提交时,我还必须检查唯一性。我通过为每一新行指定一个负值并减少索引来处理此问题-1,-2,-3 一旦这些行被发送到服务器并保存,它们就会带着正确的ID返回,并且一切都处于良好状态 var newRowCounter = -1; 然后我为onAddNewRow添加了一个回调来设置默认值并刷新网格 this.Grid.onAddNewRow.subs

我使用的是SlickGrid,我有3个coulmns,其中第一列是Id列,必须保持唯一(可编辑),我还想在焦点进入新行时自动增加每行的Id字段。在表单提交时,我还必须检查唯一性。

我通过为每一新行指定一个负值并减少索引来处理此问题-1,-2,-3

一旦这些行被发送到服务器并保存,它们就会带着正确的ID返回,并且一切都处于良好状态

var newRowCounter = -1;
然后我为onAddNewRow添加了一个回调来设置默认值并刷新网格

this.Grid.onAddNewRow.subscribe(function (e, args) {
    var item = {
        myId: newRowCounter--
    };

    $.extend(item, args.item); // Merge my default item and user input
    args.item = item;

    var dataview = args.grid.getData(); // Retrieve my underlying datacontext.
    dataview.addItem(args.item); // Add my merged item to the datacontext.

    args.row = dataview.getLength() - 1;
    args.grid.invalidateRow(args.row); // Tell the grid this row changed

    self.Grid.updateRowCount(); 
    self.Grid.render(); // Display our changes.
});

是的,谢谢。我发现我的解决方案与这种方法类似。