jqGrid 子网格的 JSON 对象

2024-01-15

这是我关于 jqGrid 子网格的 JSON 数据的第三个问题,到目前为止我还没有得到任何评论。请有人帮忙。

my 第一个问题 https://stackoverflow.com/questions/6647302/subgrid-in-jqgrid
2nd one https://stackoverflow.com/questions/6647850/json-string-for-my-jqgrid-subgrid

我无法了解 jqGrid 中子网格使用的 json 格式。在我的第二个问题中,我询问了我应该用于特定场景的格式

for the given image enter image description here

这是正确的 JSON 字符串吗?

var myJSONObject = {
"list": [
    {
        "elementName": "TERM",
        "attribute": [
            {
                "name": "information",
                "firstValue": "Required fixes for AIX",
                "secondValue": "Required fixes for AIX"
            },
            {
                "name": "name",
                "firstValue": "PHCO_34",
                "secondValue": "PHCO_34"
            },
            {
                "name": "version",
                "firstValue": "1.0",
                "secondValue": "2.0"
            }
        ],
        "isEqual": false,
        "isPrasentinXml1": true,
        "isPrasentinXml2": false
    },
    {
        "elementName": "Asian-Core.ASX-JPN-MAN",
        "attribute": [
            {
                "name": "information",
                "firstValue": "Man",
                "secondValue": "Man"
            },
            {
                "name": "name",
                "firstValue": "Asian-Core.ASX-JPN-MAN",
                "secondValue": "Asian-Core.ASX-JPN-MAN"
            },
            {
                "name": "version",
                "firstValue": "B.11.23",
                "secondValue": "B.11.23"
            }
        ],
        "isEqual": false,
        "isPrasentinXml1": true,
        "isPrasentinXml2": true
    }
]
};

如果是的话,我的第一个问题这就是我到目前为止到达的地方

$('#compareContent').empty();
    $('<div id="compareParentDiv" width="100%">')
    .html('<table id="list2" cellspacing="0" cellpadding="0"></table>'+
            '<div id="gridpager2"></div></div>')
    .appendTo('#compareContent');

    var grid = jQuery("#list2");

    grid.jqGrid({
        datastr : myJSONObject,
        datatype: 'jsonstring',

        colNames:['Name','Result1', 'Result2'],
        colModel:[
            {name:'elementName',index:'elementName', width:90},
            {name:'isPrasentinXml1',index:'isPrasentinXml1', width:100},
            {name:'isPrasentinXml2',index:'isPrasentinXml2', width:100},
        ],
        pager : '#gridpager2',
        rowNum:10,
        scrollOffset:0,
        height: 'auto',

        autowidth:true,
        viewrecords: true,
        gridview: true,
        jsonReader: { repeatitems : false, root:"list" },
        subGrid: true,

        /*subGridModel: [{
            //subgrid columns names
            name: ['Name', 'Version', 'Information'],
            //subgrid columns widths
            width: [200, 100, 100],
            //subrig columns aligns
            align: ['left', 'left', 'left']

          }]*/

        // define the icons in subgrid
        subGridOptions: {
            "plusicon"  : "ui-icon-triangle-1-e",
            "minusicon" : "ui-icon-triangle-1-s",
            "openicon"  : "ui-icon-arrowreturn-1-e",
            //expand all rows on load
            "expandOnLoad" : true
        },
        subGridRowExpanded: function(subgrid_id, row_id) {
            var subgrid_table_id, pager_id;
            subgrid_table_id = subgrid_id+"_t";
            pager_id = "p_"+subgrid_table_id;
            $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>");
            jQuery("#"+subgrid_table_id).jqGrid({
                datastr : myJSONObject,
                datatype: 'jsonstring',
                colNames: ['Name','Value1','Value2'],
                colModel: [
                    {name:"name",index:"name",width:90},
                    {name:"firstValue",index:"firstValue",width:100},
                    {name:"secondValue",index:"secondValue",width:100},
                ],
                rowNum:20,
                pager: pager_id,
                sortname: 'name',
                sortorder: "asc",
                height: 'auto',
                autowidth:true,
                jsonReader: { repeatitems : false, root:"attribute" }
            });
            jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:false,del:false})
        }
    });
    grid.jqGrid('navGrid','#gridpager2',{add:false,edit:false,del:false});

欢迎任何类型的建议/评论/解决方案。谢谢

我的输出


您的代码在声明中存在小错误myJSONObject变量和创建包含的代码div#compareContent应固定为

$('#compareContent').empty();
$('<div id="compareParentDiv" width="100%">'+
  '<table id="list2" cellspacing="0" cellpadding="0"></table>'+
        '<div id="gridpager2"></div></div>')
.appendTo('#compareContent');

其他小的语法错误是尾随逗号colModel: 应删除“]”之前的逗号。

现在解决你的主要问题。你应该改变datastr : myJSONObject在子网格中类似

datastr : myJSONObject.list[0]

然后修改后的演示将显示数据:参见here http://www.ok-soft-gmbh.com/jqGrid/abhisheksimon.htm.

您遇到的另一个问题是数据中缺少 id。您应该修改数据结构来定义每个网格行和每个子网格行的唯一 ID。您应该考虑到数据中的 id 将用作 的 id<tr>elements 和 HTML 不允许在一个 HTML 页面上有重复的 id。

UPDATED: See here http://www.ok-soft-gmbh.com/jqGrid/abhisheksimon1.htm修改 JSON 输入和 jqGrid 以便使用 ids 的示例。

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

jqGrid 子网格的 JSON 对象 的相关文章

随机推荐

  • 使用 docker-composer 进行扩展并向主机名添加数字?

    我有一个docker compose yml master build slave image master hostname slave command run slave 我怎样才能使docker compose scale slave
  • 更新后反应输入光标移动到末尾

    当我更新输入字段中的值时 光标移动到字段的末尾 但我希望它保持在原来的位置 什么可能导致此问题
  • 使用WEKA时找出错误分类的实例

    我正在使用 WEKA 的 GUI 版本 并使用朴素贝叶斯进行分类 谁能告诉我如何找出哪些实例被错误分类 转到 Weka 资源管理器中的分类选项卡 单击更多选项 检查输出预测 Click OK 希望有帮助
  • 如何在 uitextfield 中显示 pickerview 而不是键盘?

    我想在成为 UITextfield 而不是键盘的 FirstResponder 时显示 UIPickerView 并在选择器视图的文本字段中填充值 有人知道吗 使用 textfield InputView uipickerView 替换系统
  • SmtpClient“由于数据包格式意外,握手失败”

    我使用 SmtpClient 发送电子邮件 代码如下 SmtpClient client new SmtpClient host 587 client EnableSsl true client Credentials new System
  • 如何从一个Windows控制台应用程序向另一个应用程序发送消息?

    我有一个启动子进程的 Windows 控制台应用程序 如何向子进程发送消息 我发现类似的功能PostMessage PeekMessage http msdn microsoft com en us library windows desk
  • Java 中缺失值

    Java中可以用什么语句来表示变量的缺失值 比如我想写一段代码 if a gt 23 income pay rate else income is missing 这个线程中有很多不好的建议 首先让我谈谈为什么你应该not采取一些建议的方法
  • 将 Golang JSON 存储到 Postgresql 中

    我想将某个结构存储到我的数据库中 其中有一个 JSON 字段 type Comp struct CompId int64 db comp id json comp id StartDate time Time db start date j
  • stack.yaml 文件和 .cabal 文件有何区别?

    我最近开始在为项目指定外部依赖项时使用 Haskell 堆栈 有时您将其放置在 cabal 文件中 而有时您将其放置在 yaml 文件中 我是否正确地认为 当您将其放入 cabal 文件中时 它只会在堆栈存储库中查找您的包 但是 当您将其放
  • Android SDK Manager 安装特定版本的 NDK Bundle

    我正在尝试安装 NDK 15c 但我似乎不知道如何告诉 sdkmanager 版本 如果我跑 sdkmanager ndk bundle 我会得到我不想要的最新的 我尝试了不同的组合 但没有任何效果 sdkmanager ndk bundl
  • Akka actor 查找或依赖注入

    我刚刚开始使用 Akka 我无法决定是否应该使用依赖注入 如蛋糕模式 或 actor 查找来将 actor 彼此解耦 首选方法是什么 您应该更喜欢向彼此介绍 Actor 这意味着在消息中发送 ActorRef 或与消息一起发送 或者将其传递
  • CouchDB 中的树

    我是 CouchDB 新手 有一个问题 我正在使用父消息的 ID 作为属性来保存消息 消息还可以有一个 childMessage 作为父级 因此它看起来像一棵树 我如何查询所有孩子 包括孩子的孩子 谢谢 这是处理分层数据时常用的方法 htt
  • Rails 如何优化我的网站?

    我想让我的网站更快 我知道我可以制作 CSS 精灵并压缩 HTML 和 CSS 还有其他方法可以优化页面速度吗 此页面就是一个示例 http www vinderhimlen dk konkurrencer vind elektronik
  • 如何防止 BeautifulSoup4 在汤中添加额外的 标签? [复制]

    这个问题在这里已经有答案了 在 BeautifulSoup 3 之前的版本中 我可以获取任何 HTML 块并通过以下方式获取字符串表示形式 from BeautifulSoup import BeautifulSoup soup3 Beau
  • 使用 PHP 确定本地文件的 Mime 类型(内容类型)

    我正在尝试确定文件的 mime 类型 我尝试了几种方法 但没有想出任何可以提供一致输出的方法 我试过了 mime mime content type file and mime exec file bi file 我正在提供图像 CSS 和
  • 如何在Qt5中播放声音(Qt4迁移)?

    在Qt4中我曾经使用过 QT multimedia phonon include
  • 安全性:我应该如何存储(“记住”)用户的用户名和密码以供将来使用?

    我需要我的应用程序能够记住用户的用户名和密码 以便用户将来不必再次输入 显然 为了 记住 用户名和密码以供将来使用 这意味着我的应用程序必须以某种方式将用户名和密码存储到磁盘 这通常是如何完成的 我知道 Pidgin 以纯文本形式存储用户名
  • 高阶函数有哪些有趣的用途?

    我目前正在学习函数式编程课程 我对高阶函数和一等公民函数的概念感到很有趣 然而 我还想不出许多实际有用的 概念上令人惊奇的或只是简单有趣的高阶函数 除了典型的 相当沉闷的map filter等功能 您知道此类有趣函数的示例吗 也许是返回函数
  • 图像和 div 的最大可能尺寸扩展以填充空间

    我确信以前有人问过这个问题 但我找不到确切问题的答案 我想要一个非常简单的布局 header content graphic where 页眉高度由字体大小设置 内容有固定的最小宽度 考虑到这两个限制并保持纵横比 图形尽可能大 即 它将与屏
  • jqGrid 子网格的 JSON 对象

    这是我关于 jqGrid 子网格的 JSON 数据的第三个问题 到目前为止我还没有得到任何评论 请有人帮忙 my 第一个问题 https stackoverflow com questions 6647302 subgrid in jqgr