0

我创建了一个小型数据库(couchdb)和网页(html5 样板)。我的最终目标是让用户单击一个按钮,该按钮将检索一个特定视图,该视图将使用 dhtmlx 库 (http://dhtmlx.com/) 呈现为表格。

此时我有页面在页面加载时初始化表格(网格)。我正在尝试使用 'mygrid.load(url,"json")' 将数据加载到表中。文档没有提供 url 的示例,但我假设它是视图的 couchdb url。在我的情况下是:127.0.0.1:5984/mydata/_design/mydata/_view/details。如果我在浏览器中打开该 url,我会看到 json 格式的数据。

{"total_rows":14,"offset":0,"rows":[
{"id":"90e77126ce592105891eba2bd4000143","key":"An","value":"addition to others"},
{"id":"90e77126ce592105891eba2bd4001106","key":"Changed","value":"Directories."},
. . .
{"id":"83001c900adeefe50928a24b98001733","key":"Yeah","value":"CSS kind of working.  Guess I have express 3.0"}
]}

不用说:

mygrid.load("http://127.0.0.1:5984/mydata/_design/mydata/_view/details","json") 

不起作用。所以:

a)任何想法我可能做错了什么?
b) 是否有更好的库来解决我试图用网格做的事情?dhtmlx 似乎是面向 xml 文件的,但这是给我的。

4

2 回答 2

0

看起来 dhtmlx 支持 JSON 初始化: http ://www.dhtmlx.com/docs/products/dhtmlxGrid/samples/12_initialization_loading/09_init_grid_json.html

您可能需要编写一些自定义 JavaScript 来将 CouchDB 视图输出转换为 Grid 初始化程序支持的格式。

于 2012-09-10T22:50:03.220 回答
0

还要检查您的 html 是否来自 http://127.0.0.1:5984。如果不是从该地址和端口提供服务,那么由于同源策略,您的 javascript 将根本无法向 http://127.0.0.1:5984 发出请求

所以你要么必须直接从 couchdb 提供你的 html,要么使用一些代理,以便它们看起来是从相同的主机和端口提供的。

于 2012-09-11T11:31:03.767 回答