【问题标题】:Displaying images inside table using JQuery使用 JQuery 在表格内显示图像
【发布时间】:2016-03-12 09:39:43
【问题描述】:

我正在使用 AJAX 向 API 发送请求,并使用包含图像 URL 和各种元数据的 JSON 检索响应。

我试图在 html 表格中显示这些图像,但由于某种原因,localhost:8000(我正在从 localhost 进行测试)被附加到图像标签内每个 url 的开头。

这是从 AJAX 响应生成 html 的代码:

success: function(response) {
            var trHTML = '';
            $.each(response, function (i, item) {
                var img1 = '<a href="' + item.url1 + '"><img src=">' + item.url1 + '"></a>';
                var img2 = '<a href="' + item.url2 + '"><img src=">' + item.url2 + '"></a>';

                trHTML += '<tr><td>' + item.score + '</td><td>' + img1 + '</td><td>' + img2 + '</td></tr>';
            });
                // append results to table
                $('#resultsTable').append(trHTML);
          }

仅显示 404 - img not found 图标,因为它们指向以下网址:

http://localhost:8000/%3Ehttps://url-of-my-image.jpg

但是,href 命令中的 url 工作正常,并且指向正确的位置:https://url-of-my-image.jpg

有人可以解释发生了什么吗?有一次,问题只出在&lt;img src='url'&gt; 标签内的url。

【问题讨论】:

  • 不应该 '' + item.url1' 是 after src=

标签: javascript jquery html ajax


【解决方案1】:

看起来你有一个额外的不必要的右尖括号,试试:

success: function(response) {
        var trHTML = '';
        $.each(response, function (i, item) {
            var img1 = '<a href="' + item.url1 + '"><img src="' + item.url1 + '"/></a>';
            var img2 = '<a href="' + item.url2 + '"><img src="' + item.url2 + '"/></a>';

            trHTML += '<tr><td>' + item.score + '</td><td>' + img1 + '</td><td>' + img2 + '</td></tr>';
        });
            // append results to table
            $('#resultsTable').append(trHTML);
      }

【讨论】:

  • 非常感谢。这么愚蠢的错误,花了我这么多时间:)
  • 当一个人累了,盯着同一段代码看太久的时候很容易错过! :)
猜你喜欢
  • 1970-01-01
  • 2013-02-04
  • 1970-01-01
  • 1970-01-01
  • 2012-08-28
  • 2013-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多