You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JavaScript为脚本内div包含的img标签动态赋值src URL

解决方法

你只需要按照和name、review字段完全一致的字符串拼接规则,把data[i].img嵌入到src属性的位置即可,同时建议修正循环生成元素时固定id重复的问题,修改后的代码如下:

$("#login").on("click", function isValid() {
    $.ajax({
        url: "https://xyz.foo.net/super",
        type: 'GET',
        success: function(data) {
            var name = "";
            for(var i=0;i<data.length;i++){
                name += '<div class="tm-list-item">' +
                    // 直接拼接data[i].img到src属性中
                    '<img src="' + data[i].img + '" alt="Image" class="tm-list-item-img">' +  
                    '<div class="tm-black-bg tm-list-item-text">' +
                        '<h3 class="tm-list-item-name">' + data[i].name + '</h3>' +
                        '<p class="tm-list-item-description">' + data[i].review + '</p>' +       
                    '</div> ' +
                '</div>' 
            }
            // 直接用html方法赋值即可,不需要先清空再追加
            $("#name").html(name);
        },
        error: function(e) {
            alert("Refresh Page");
        }
    });
});

注意事项

  • 拼接逻辑:外层HTML片段用单引号包裹,src属性用双引号包裹,动态值通过' + 变量 + '的格式嵌入即可,不需要额外转义
  • 移除了重复的固定id:循环生成多个img元素如果使用相同id会导致DOM操作异常,如果你确实需要给img加id,可以拼接循环索引生成唯一标识,例如id="image' + i + '"
  • 代码优化:$("#name").html(name)等价于先清空内容再追加,可省去单独清空的步骤

内容的提问来源于stack exchange,提问作者John Seen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 22:06:03