jQuery .html('<img/>')在FF和Opera中不起作用

时间:2012-08-12 12:17:22

标签: javascript jquery html firefox

这一行

jq("#description" + tourId).html('<b>Opis: </b>  '+ data);

在IE,Firefox和Opera中运行良好。

但是这个

jq("#images" + tourId).html('<img src=\"img\\gbflag.png\"/>');

仅适用于IE。 Firefox和Opera不显示图像。你知道为什么吗?

这是我的其余代码:

<script type="text/javascript">
var jq = jQuery.noConflict();
function showImages(tourId) {
    jq(function() {
        jq.post("/TourWebSpring/tourImages.html",
            {tourId: tourId},
        function(data) {
            ...
            ...
            jq("#images" + tourId).html('<img src=\"img\\gbflag.png\"/>');
        });
    });
}

function showDetails(tourId) {
    jq(function() {
        jq.post("/TourWebSpring/tourDetail.html",
            {tourId: tourId},
        function(data) {
            ... 
            jq("#description" + tourId).html('<b>Opis: </b>  '+ data);
        });
    });
}

3 个答案:

答案 0 :(得分:7)

我认为问题可能是你在img目录后使用了错误的斜杠,我不相信你需要转义双引号,因为你用单引号定义字符串。尝试:

jq("#images" + tourId).html('<img src="img/gbflag.png"/>');

答案 1 :(得分:1)

jq("#images" + tourId).html('<img src=\"img\\gbflag.png\"/>');

应该是

jq("#images" + tourId).html('<img src="img/gbflag.png" />');

答案 2 :(得分:-1)

你不必逃避,所以它应该是:

jq("#images" + tourId).html('<img src="img\gbflag.png"/>');

<强>更新

哎呀,没注意到你正在使用反斜杠。斯科特指出这很好!