YUI Datatable не принимает JSON - PullRequest
1 голос
/ 06 января 2011

Я пытаюсь заполнить таблицу данных с помощью JSON, используя YUI,

У меня есть этот JSON:

[{"test":"value1",
"test2":"value2",
"test3":"value3",
"topic_id":"123139007E57",
"gmt_timestamp":1553994442,
"timestamp_diff":-1292784933382,
"status":"images\/statusUp.png",
"device_id":"568FDE9CC7275FA"}, ..

Это продолжается примерно с 20 различными устройствами, и я закрываю его с помощью *

Я просто хочу напечатать ключи выбора в таблице данных, чтобы мои определения столбцов выглядели так:

var myColumnDefs = [
    {key:"test", sortable:true, resizeable:true},
    {key:"test2", sortable:true, resizeable:true},
    {key:"topic_id", sortable:true, resizeable:true},
    {key:"status", sortable:true, resizeable:true},
    {key:"device_id", sortable:true, resizeable:true},
];

var myDataSource = new YAHOO.util.DataSource(bookorders);
        myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSARRAY;
        myDataSource.responseSchema = {
            fields: ["test","test2","topic_id","status","device_id"]
        };


    var myDataTable = new YAHOO.widget.DataTable("basic",
            myColumnDefs, myDataSource);

Это ошибка печати данных по какой-то причине, что я делаю не так?

Спасибо!

Я проверил действительность JSON в JSONLint, и он говорит, что он действителен.

1 Ответ

2 голосов
/ 07 января 2011

Если вы используете JSON, я думаю, что ваш тип ответа источника данных должен быть такого типа: YAHOO.util.DataSource.TYPE_JSON вместо TYPE_JSARRAY. Вы видели пример в: developer.yahoo.com / yui / examples / datatable / dt_xhrjson.html

Можете ли вы использовать Firebug для точного определения ошибки? Посмотрите, если ответ в порядке и какой JSON возвращается. Если вы считаете, что это проблема json, вы можете использовать библиотеку, такую ​​как Jackson , чтобы сгенерировать ее на сервере (она убедится, что возвращенный json в порядке).

...