0

dhtmlxgrid 文档说我应该能够使用序列化功能获取包含网格数据的字符串。

有没有办法从 dhtmlx 网格中获取当前数据,以便能够从中创建我自己的 xml 文件?

4

1 回答 1

3

以下是有关 dhtmlxgrid 的答案,可能对任何寻找具有灵活 API 的网格和未针对数据库进行硬编码的网格的人有用。我需要一些东西来支持 XML 数据存储。我查看了几个网格,这个具有最直接的 API,同时具有向网格中添加数据和从网格中提取数据的灵活性。此外,它具有所有预期的功能,无需额外编码:隐藏列、排序、拖放...以及许多我尚未测试过的其他功能:过滤、上下文菜单。它似乎没有编辑详细信息弹出窗口,但可以使用提供的方法轻松添加。

dhtmlxgrid 中的序列化方法确实会返回一个带有当前网格内容的文本字符串。方法 .serialize() 返回和 XML 字符串(具有 dhtmlxgrid 特定结构)和 .serializeToCSV() 返回 csv 字符串。有用于指定分隔符的选项。

dhtmlxgrid 确实有一个用于链接到数据库的数据处理器。但它也有手动处理数据的方法,特别是如果您有文本文件或 XML 存储。这些是 dhtmlxgrid 中的方法,它们对于将数据添加到网格和从网格中提取数据很有用:

将数据添加到网格

    grid.loadXML(url)              // load data from a remote file
    grid.loadXMLString(string);    // load data from a JS string
    grid.parseXML(object);         // load data from an XML object (xmlhttprequest or XML island)

    grid.loadCSV(url)              // load data from a remote file;
    grid.loadCSVString(string);    // load data from a JS string

    grid.load(url)                 // load data from a remote file, XML is expected by default;
    grid.load(url,"csv")           // the same for CSV format;
    grid.load(url,"json")          // the same for JSON format;
    grid.load(url,"jsarray")       // the same for JSArray format.

    grid.parse(object)             // load data from a string|object, XML is expected by default;
    grid.parse(url,"csv")          // the same for CSV format;
    grid.parse(url,"json")         // the same for JSON format;
    grid.parse(url,"jsarray")      // the same for JSArray format. 

◦ url - 外部文件的 url;

◦ call - 加载后的回调函数;可选参数,可以省略;

◦ type - 数据类型(xml、csv、json、jsarray);可选参数;默认为.xml。

对于这些方法,文档可以在dhtmlx 网格加载数据文档中找到。

从网格中提取数据

    var xmlstring = grid.serialize();      //serialize grid to xml format 
    var csvstring = grid.serializeToCSV(); //serialize grid to CSV format
    grid.setSerializableColumns(...)       //set flag to true for columns to serialize

这些方法的文档可以在dhtmlxgrid 序列化文档中找到。

API

可以在此处找到网格文档。您将在那里找到所有网格功能的目录,其中包含指向 API 的链接(按字母顺序或分类列出)。

样品

样品可以在这里找到。您可能需要查看一些示例才能找到涵盖您特定情况的示例。通常他们会有一些有用的东西。一个关于行和列操作的示例说明了对网格的 API 的使用。

由于大量研究都在寻找具有该组功能的东西,我想我会在这里提供这些信息。

于 2011-11-26T21:10:54.683 回答