YUI DataTable正在加载...但没有检索到数据

时间:2012-01-26 16:35:21

标签: ajax coldfusion xmlhttprequest yui

我有一个绑定到YUI数据源的YUI数据表,需要在几秒钟后自动刷新,也可以通过按钮自动刷新。虽然我能够通过本地数据源(在同一页面中声明的数据源)读取数据,但我无法远程读取它。即使以设定的间隔对目标页面(yui_data.cfm)发出请求,网格仍为“数据加载...”。源代码如下:

yui_data.cfm的源代码(用于测试)如下:

{ "records": [ {"id": 31, "name":"4fruit", "price":8323, "number":231}   ] }

请求数据的页面的源代码:

myDataSource = new YAHOO.util.XHRDataSource("yui_data.cfm?");
myDataSource.responseType = YAHOO.util.XHRDataSource.TYPE_JSON;
myDataSource.responseSchema = {
    resultsList: "records",
        fields: [
           {key:"id", parser:"number"},
           {key:"name"},
           {key:"price",parser:"number"},
           {key:"number",parser:"number"}
        ]
};

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

myCallBack = {
   success: myDataTable.onDataReturnSetRows,
   failure: function() {
   },
   scope: myDataTable,
   argument: myDataTable.getState()
}
myDataSource.setInterval(5000, null, myCallBack);

以上示例仅适用于该行     myDataSource = new YAHOO.util.XHRDataSource(“yui_data.cfm?”); 改为:     myDataSource = new YAHOO.util.XHRDataSource(YAHOO.data.sample); //作为一个例子!

1 个答案:

答案 0 :(得分:0)

我设法通过在前面的JSON输出前面添加ResultSet和Result来修复问题,然后修改响应模式resultList以从该路径读取。