在没有唯一ID的slickgrid中添加一行,只有在保存该行后才能获得该行?

时间:2016-11-14 11:44:20

标签: jquery slickgrid

在我的网格中,使用光滑的网格创建我正在尝试创建网格行 。只有在将这些行数据保存到后端数据库后才能获得唯一的ID。我该如何处理这种情况?没有唯一ID,当我移动到下一个单元格时,单元格数据不会保留在那里

2 个答案:

答案 0 :(得分:0)

我会这样做:

  1. 为新行数据创建临时unique_id。
  2. 将行数据发布到后端数据库并返回回调时生成的id。
  3. 使用返回的生成ID更新行数据。

答案 1 :(得分:0)

替代方案可能更快(在保存网络往返方面)解决方案是在客户端生成GUID/UUID。要使用示例JavaScript代码停止生成GUID,请查看这个很棒的SO answer

引用生成GUID时的碰撞概率:

  

例如,对于3.26x1015版本4 RFC4122 UUID,您有一个百万分之一的碰撞机会。

引用的代码可以生成GUID:

'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
    var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
    return v.toString(16);
});

结果:

“3bce4931-6c75-41ab-afe0-2ec108a30860”

所以我建议的实际执行步骤是:

  1. 生成您的手机数据
  2. 生成GUID
  3. Voila,你有自己的唯一ID,可以移动下一个单元格,行等。