1

我创建了一个图库网格并尝试输出图像。我尝试将路径放入var thumb ="path";,然后将其连接到,json_data但无法读取图像的路径。有任何想法吗?

function ajaxfunction(json_data){
    var path = "images/products/shirts/smallthumbs/"; // path to image
    var url = "#";

    var table = $("<table></table>");
    var tr = $("<tr></tr>").appendTo(table);
    for (var i = 0; i < json_data.length ; i++){
        if (i %4==0)
            tr = $("<tr></tr>").appendTo(table);              
        $(tr).append("<td>"+json_data[i].prod_name+"<br/>"+
          " " + "<a href="+url+"><img src="+path+json_data[i].pic"/></a>"+"<br/>"+ //attempting output
          "\u00A3"+json_data[i].price+"</td>");
    }  

    $("#maindisplay").append(table);
}
4

2 回答 2

1

用单引号将src属性内容(即您的路径数据)括起来,因此请替换以下代码:

... +"><img src="+path+json_data[i].pic"/></a>"+ ...

对于这个:

... +"><img src='"+path+json_data[i].pic"'/></a>"+ ...
于 2013-04-04T22:00:05.160 回答
1

这条线$(tr).append("<td>"+json_data[i].prod_name+"<br/>"+ " " + "<a href="+url+"><img src="+path+json_data[i].pic"/></a>"+"<br/>"+ //attempting output "\u00A3"+json_data[i].price+"</td>");

需要有适当的引号分隔字符串(最好'用于 JavaScript字符串,以便您可以"用于 HTML 中的属性:

 $(tr).append('<td>' + json_data[i].prod_name + '<br/>' +
  ' ' + '<a href="' + url + '"><img src="' + path + json_data[i].pic + '"/></a>' + '<br/>' + //attempting output
  '\u00A3' + json_data[i].price + '</td>');

此外,多次调用.appendTo(). 您应该一次性生成 HMTL 元素,而不是多次.append()调用。

于 2013-04-04T22:00:42.537 回答