【问题标题】:How to use Slickgrid to render XML data?如何使用 Slickgrid 呈现 XML 数据?
【发布时间】:2013-01-31 18:39:04
【问题描述】:

我们正在使用 JQuery 和 JQuery UI,并希望将 xml 到 dom 表重写为基于数据存储的网格。在 ExtJs 中,我可以使用 Ext.data.reader.Xml 和数据模式将返回的数据映射到网格。我正在尝试做同样的事情,但使用基于 JQuery 的网格库。还需要考虑性能和主题。

我过去使用过 JqGrid,它有 xmlmap 选项。但是,我关注的是 SlickGrid,特别是它的性能。我看不到任何 XML 驱动的示例。我怀疑如果我使用 Slickgrid,我将不得不加载 xml 并循环通过它来构建数据对象。

有人对使用 Slickgrid 显示 XML 数据有什么建议吗?具体来说,它是否具有 xmlmap 或 xml 阅读器功能?对于 1000 行,SlickGrid 会比 JqGrid 显着提高性能吗?

XML 示例:

            <D:prop>
            <FileExtension>.s4d</FileExtension>
            <ComponentType>DynamicTrove</ComponentType>
            <getcontenttype>application/xml</getcontenttype>
            <ComponentCreatedOn>2011-03-17 12:57:57 </ComponentCreatedOn>
            </D:prop>
            <D:prop>
            <FileExtension>.s4d2</FileExtension>
            <ComponentType>DynamicTrove2</ComponentType>
            <getcontenttype>application/xml2</getcontenttype>
            <ComponentCreatedOn>2011-03-17 12:57:57 2</ComponentCreatedOn>
            </D:prop>

谢谢。

示例

【问题讨论】:

  • 您有 XML 文件作为文件吗?你能提供每个 URL 的数据(如 http)吗? XML 文件的示例非常有用。例如,文件中是否使用了 XSD 的命名空间?所有的 XML 数据都具有相同的 XSD 结构吗?数据是更面向属性还是所有数据都在元素内部? XML 文件中是否有混合节点?等等?
  • XML 当前正在加载到 DOM(例如 ActiveXObject)。通过更多的返工,我们应该能够使用 Ajax 加载它。后端是 Java Servlets。
  • 对于 jqGrid DOM 是可以的,但是需要有一个 XML 的例子来更多地谈论一些网格。
  • 返回的XML不太复杂,每个数据节点包含15个info元素。深度 1。谢谢。

标签: jqgrid grid slickgrid xmlreader datastore


【解决方案1】:

您可以在网格中显示此类 XML 数据。我建议您包括本地搜索和过滤,如果用户必须分析 1000 行数据,这对用户来说非常实用。如果您将分页与过滤一起使用,您将获得 1000 行的非常好的性能。我不建议您一次显示所有 1000 行。分页要好得多。

主要问题可能是 XML 命名空间,因为它可能以不同的方式解析 jQuery。有关问题的简短描述,请参阅the answer

The demo 是一个示例,可以作为您的起点。 Another demo 使用 XML 命名空间,在 IE 中可以正常工作,但在 Google Chrome 中却不能正常工作。

【讨论】:

  • 感谢您的回答。我正在尝试使用 JSGrid,而 XML 命名空间绝对是一个问题。我不需要 Google Chorme 支持,因此这对我有用。
  • @Natkeeran:不客气!独立于浏览器选择 XML 命名空间的问题并不是 jqGrid 特有的。这是 jQuery 的问题。
猜你喜欢
  • 2015-07-07
  • 2016-04-08
  • 2013-03-14
  • 1970-01-01
  • 2012-06-29
  • 1970-01-01
  • 2013-08-22
  • 2022-10-13
  • 1970-01-01
相关资源
最近更新 更多