Есть ли лучший подход для обработки "нет данных" с помощью JqPlot?
Предполагая, что я потребляю json-данные с помощью ajax-вызова, и, в конечном итоге, нет данных, например:
[['North'][0],['South'][0],['East'][0],['West'][0]]
Есть ли лучший подход для обработки "нет данных" с помощью JqPlot?
Предполагая, что я потребляю json-данные с помощью ajax-вызова, и, в конечном итоге, нет данных, например:
[['North'][0],['South'][0],['East'][0],['West'][0]]
У меня всегда есть условие, что я проверяю мою функцию AJAX
, которая не проверяет отсутствие результатов. Тогда, если никаких результатов не произойдет, я устанавливаю диаграмму так, чтобы она выглядела пустой. По этой причине var data = [[null]]
должен делать, где data
является параметром jQuery.jqplot('chart', data, {})
. Значение data
может зависеть от типа диаграммы, поэтому я тестировал его для строки, строки и круговой диаграммы, и он отлично работает.
По желанию вы также можете скрыть легенду и, возможно, другие части сюжета. Для меня просто установка data
и легенда всегда достаточно.
var data = [null];
приведет к ошибкам в консоли и продолжит выполнение JS script.
Лучшим решением будет использование следующих.
var data = [''];
jQuery.jqplot('chart', data, {});
Это приведет к печати любых последующих графиков и/или продолжению выполнения сценариев JS без ошибок в консолях FF/Chrome/IE.:-)
В моем случае это было противоположно ответу Рахи (возможно, недостающие двойные скобки вокруг нуля были проблемой), то есть я согласен с Boro;
Это работает: var data = [[null]];
и это: var data = [''];
генерирует ошибку, один раз, независимо от того, есть ли у меня несколько диаграмм или только один без данных.
Я запускаю jqPlot 1.0.9
Ошибка, которую я получаю: Uncaught Error: No data specified
из условия в jqPlot script
if (0 == this.noDataIndicator.show)
throw new Error("No data specified");