Jquery动态表生成一个打破图像链接的空间

时间:2011-02-08 17:23:20

标签: javascript jquery yql

我正在为Amazon Associates商店生成亚马逊封面和标题表,使用YQL从Google文档电子表格中提取图书信息。下面的'append'函数为我提供了一个图像链接,其中有一个额外的空格(在'images / I /'之后)打破了链接。它给了我:

http://ecx.images-amazon.com/images/I/%2041XXDPPYBQL._SL150_.jpg

http://ecx.images-amazon.com/images/I/ 41XXDPPYBQL._SL150_.jpg

而不是正确的:

http://ecx.images-amazon.com/images/I/41XXDPPYBQL._SL150_.jpg

如何让它生成正确的链接?我必须逃避什么吗?

.append('<tr><td class="coverwrap"><a href="http://astore.amazon.com/calvininstitu-20/detail/' + item.ASIN + '"><img src="http://ecx.images-amazon.com/images/I/' + item.ImageID + '._SL150_.jpg"></a></td> [...]

2 个答案:

答案 0 :(得分:0)

出于某种原因,您的ImageID似乎有一个前导空格。如果你无法在源头修复它,你可以这样修剪:

item.ImageID.replace(/^\s+/, "")

答案 1 :(得分:0)

根据@Šime's评论,item.ImageID似乎有一个额外的空格。解决此问题的一种简单方法是$.trim()字符串:

.append('<tr><td class="coverwrap"><a href="http://astore.amazon.com/calvininstitu-20/detail/' + item.ASIN + '"><img src="http://ecx.images-amazon.com/images/I/' + $.trim(item.ImageID) + '._SL150_.jpg"></a></td> ...')