如何在制表器中动态地将行添加到嵌套树数据中?

2023-12-04

对于我的项目,我需要根据用户提交的表单数据将新的子行添加到数据树中的父行。我无法在文档中找到如何执行此操作的示例。使用 addRow({...}) 函数可以实现这一点吗?我如何声明哪个父级添加子行?或者我是否需要构建一个自定义函数,将新行插入表 JSON 对象并重绘表?

感谢您的帮助!


我使用的解决方案是将新行对象添加到父行的 _children 数组的副本中,然后向父行发送更新。为此,您需要找到父行,获取其数据(其中将包括子行对象的 _children 数组),将新数据行添加到 _children,并更新数据表中的父行数据。

$("#add-child-row").click(function(){
    //Get values for child row form fields
    var childFields = $("#child-form").serializeArray().reduce(function(obj, item) {
        obj[item.name] = item.value;
        return obj;
    }, {});

    var newRow = {
        name: childFields.name,
        location: childFields.location,
        gender: childFields.gender,
        col: childFields.color,
        dob: childFields.dob,
    };

    //Find row to add child
    //searchRows() returns array
    //In my case, I am only expecting one matching row so use index 0
    var parentRow = table.searchRows("name","=","Oli Bob");

    //Get data for the parent row so we can update it's _children array
    var tempParentRowData = parentRow[0].getData();

    //Add new row to children array
    tempParentRowData._children.push(newRow);

    //Update data table row with new children array
    parentRow[0].update({_children:tempParentRowData._children});
});

如果您期望有大量的子行,我不知道这会起到多大作用。如果上述解决方案有任何缺陷或有更好的解决方案,我很乐意看到。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在制表器中动态地将行添加到嵌套树数据中? 的相关文章

  • 使用 Scala 插件在 IntelliJ Ultimate 13.1.1 中创建 SBT 项目没有为 src/main/scala 提供 New > Scala 对象?

    我正在尝试开始使用 Scala 中的快速 Hello World 应用程序 我正在使用 IntelliJ Ultimate 13 1 1 我已经下载了 Scala 插件 我还下载了 SBT 插件 项目SDK是Java 1 6 我继续创建了一
  • 在 React Native 中保存敏感数据

    我正在构建一个 React Native 应用程序 我需要保存一些敏感数据 例如令牌和刷新令牌 显而易见的解决方案是使用保存该信息异步存储 问题在于 AsyncStorage 的安全级别 AsyncStorage 提供了一种本地存储令牌和数
  • 如何检查 JSON 密钥是否存在?

    因此 我从服务器获取一些 JSON 值 但我不知道是否会有特定字段 So like regatta name ProbaRegatta country Congo status invited 有时 会有一个额外的字段 例如 regatta
  • 如何在 Android 上使用 Volley 的基本身份验证?

    我正在查看示例和代码 但没有看到任何实现 现阶段这可能吗 对于那些不想为此而使用 Spring for Android 的人 可以参考以下方法 Override public Map
  • mocha + webstorm - 错误消息已损坏

    我尝试在 Windows 7 上将 mocha 与 webstorm 测试运行程序一起使用 我有这些配置参数 节点路径 C Program Files x86 nodejs node exe 工作目录 D creation software
  • 使用 fscanf 或 fgets 忽略空白?

    我想知道是否有任何方法可以使用 fscanf 或 fgets 函数忽略空格 我的文本文件每行有两个字符 可能会也可能不会用空格分隔 我需要读取这两个字符并将每个字符放入不同的数组中 file fopen argv 1 r if file f
  • 将 HICON 保存为 png

    我正在使用 IShellItemImageFactory 提取文件的图标 我能够成功提取它并使用它在对话框中显示它 SendDlgItemMessage hDlg IDC STATIC2 STM SETIMAGE IMAGE ICON LP

随机推荐