Вот ответы о 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 - ссылка на внешний файл;
◦ call - функция обратного вызова после загрузки; необязательный параметр, может быть опущен;
◦ тип - тип данных (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 serialize document .
API
Документацию по сетке можно найти здесь . Там вы найдете оглавление со всеми функциями сетки со ссылками на API (перечислены в алфавитном порядке или по категориям).
Образцы
Образцы можно найти здесь . Возможно, вам придется просмотреть несколько образцов, чтобы найти тот, который охватывает вашу конкретную ситуацию. Обычно они будут иметь что-то полезное. Пример манипулирования строками и столбцами иллюстрирует использование API для сетки.
Поскольку многие исследования были направлены на то, чтобы найти что-то с таким набором функций, я решил сделать эту информацию доступной здесь.