YQL,在Open Table中获取内容

时间:2011-06-29 15:47:01

标签: yql

我尝试在打开表的执行脚本中获取文本内容... 我的查询如下:

var q = y.query('select * from html where url="http://awebpage.html" and xpath="/html/body/div/table/tr/td/table/tr/td/div/div[2]/center/div[3]//text()"');
y.log(q.results);

这项工作很好,我可以在控制台的日志中看到内容的文本。但我不知道我怎么能回来!! 如果我尝试

response.object = {'test': q.results } };

不行......我试着写:

response.object = {'test': q.results.toXMLString() } };

但它返回的内容如下:{ 'test' : '<result> bla bla bla bla </result>' }

我怎样才能得到结果的内容?!?!我只需要“bla bla bla”

1 个答案:

答案 0 :(得分:0)

如您所知,q.results是一个XML对象。要将文本内容作为字符串获取,首先要调用text()来获取XML文本对象,然后调用toString()将其转换为JavaScript字符串。

response.object = {'test': q.results.text().toString()};

还可以选择简单地返回自己的XML对象。

response.object = <test>{q.results.text()}</test>;