我正在使用:
function pipeCallback(obj) {
获取Yahoo管道的内容(使用JSON)。然后我在里面创建一个字符串:
document.write("<div......);
var buildstring = ".......;
document.write(buildstring);
document.write("</div>");
一切正常,但字符串中的一个项目除外:
obj.value.items[x].description.content
包含大量文本,并且会删除其格式。有没有办法定义一个var(使用.text()?)来保持格式,然后在字符串中使用定义的术语 - 例如类似的东西:
var description = (obj.value.items[x].description.content).text()
然后在buildstring中使用术语'description'代替obj.value.items [x] .description.content。
感谢您的任何建议/帮助。
修改
@Barmar谢谢。我试过了(我想......):
var description = function() {return (obj.value.items[x].description.content).text()};
var buildstring = "<table><tr><img src=" + imageurl + "> <b>" + obj.value.items[x].title + "</b><br /><td>" + description() + "</td></tr></table><br />";
(imageurl是一个单独定义的变量)。我想我一定错过了你的建议(或者一开始没有给出正确的信息)。无论如何..它没有用。
编辑#2
function pipeCallback(obj) {
document.write("<div id=testdiv><b>LATEST NEWS</b><hr>");
var x;
for (x = 0; x < obj.count ; x++)
{
var imageurl = (typeof obj.value.items[x]["media:content"] == 'undefined') ? "http://default.png" : obj.value.items[x]["media:content"].url;
var buildstring = "<table><tr><img src=" + imageurl + "> <b>" + obj.value.items[x].title + "</b><br /><td>" + obj.value.items[x].description.content + "</td></tr></table><br />";
document.write(buildstring);
buildstring = null;
}
document.write("</div>");
}
答案 0 :(得分:0)
你可以这样做:
var description = function() {return (obj.value.items[x].description.content).text()};
然后使用description()
来获取此内容。