如何在html中编写一个javascript变量作为img标签的源代码

我有一个参考不同图像的变量。 例如有时我有var imageName = "A.png" 。 我想将div标签的innerHTML设置为"src=" + imageName + ">"但它不起作用。 当我使用alert来获取innerHTML的实际内容时,我得到了这个<img src="A" .png=""> 。 这是为什么发生?

根据请求,这里是我的HTML代码有关这个问题。 它是从一个servlet接收一个xml文件的大部分代码的一部分。 我觉得很奇怪,底部的for循环工作正常,但img src位没有。

编辑:我设法通过改变什么servlet写入(通过添加绝对路径),将innerHTML转换为<img src="/Users/adamsturge991/Desktop/webapp/Ass5/WEB-INF/classes/A.png">只是为了确保该文件可以找到。)但是,图片仍然没有加载。 奇

function displayResult(req)
{
    var doc = req.responseText;
    parser=new DOMParser();
    xmlDoc=parser.parseFromString(doc,"text/xml");


    var imageName = xmlDoc.getElementsByTagName('ImageName').item(0).textContent + ".png";

    var comments = xmlDoc.getElementsByTagName('Comment');

    var imgDisplay = document.getElementById('ImageDisplay');

    var str = "<img src=" + imageName + ">"; 
    alert(str);
    imgDisplay.innerHTML = str;
    alert(imgDisplay.innerHTML);
    str = '';
    for (var j = 0; j < comments.length; j++)
    { 
        str = str + "<p>"+ comments.item(j).textContent + "</p>";   
        }

    var commentDisplay = document.getElementById('CommentDisplay'); 
    commentDisplay.innerHTML = str;

}

我发现这个例子很有用:

var url = "www.example.com/image.jpg";
var img = new Image();
img.src = url;
document.body.appendChild(img);

你只需要做一些调整来适应你的需求


我认为这条线是错误的:

var str = "<img src=" + imageName + ">"; 

这将呈现为:

<img src=A.png>

但是,这可能会混淆browset它可能应该是:

var str = "<img src="" + imageName + "" />";

(也就是说,引用属性值,并且为了好的度量,关闭标签。)

这呈现为:

<img src="A.png" />
链接地址: http://www.djcxy.com/p/47931.html

上一篇: how to write a javascript variable as source for img tag in html

下一篇: How to output JSON in Rails without escaping back slashes