如何在.html()方法中组合HTML标记和变量?

时间:2013-04-03 14:41:18

标签: javascript jquery

我有一个表示文件名的变量,我打算将带有该文件名的html图像插入到div中,如下所示:

$("#s_premise_description").html("<img src="scenario/images/" + myVariable + " />");

除了显然不起作用,但它有希望解释我正在尝试做什么。

我想简单的解决方法就是创建一个像这样的变量:

var imgURL = "<img src="scenario/images/" + myVariable + " />";

然后使用imgURL作为.html()的值,但我认为还有另一种方法,我的语法错误。

编辑:所以在刷新我的问题之前,我摆弄了一会儿,尝试单引号,似乎工作正常。

现在一切似乎都有效。处理这里发布的报价有很多不同的方式,所以感谢大家的反馈。

6 个答案:

答案 0 :(得分:4)

您需要转义引号:

var imgURL = "<img src=\"scenario/images/" + myVariable + "\" />";

var imgURL = '<img src="scenario/images/' + myVariable + '" />';

答案 1 :(得分:3)

您必须在字符串中转义双引号,或使用单引号:

$("#s_premise_description").html("<img src=\"scenario/images/" + myVariable + "\" />");

或者:

$("#s_premise_description").html('<img src="scenario/images/' + myVariable + '" />');

答案 2 :(得分:3)

你缺少引号,请使用:

 $(target).html("<img src='scenario/images/" + myVariable + "' />");

它会起作用。

答案 3 :(得分:1)

你的报价纠结在一起:

$( "#s_premise_description" ).html("<img src="scenario/images/" + myVariable + " />");

应该是这样的:

$( "#s_premise_description" ).html("<img src='scenario/images/" + myVariable + "' />");

答案 4 :(得分:1)

你需要像这样逃避你的引号:

$("#s_premise_description").html("<img src=\"scenario/images/" + myVariable + "\" />");

或者您可以使用单引号。

答案 5 :(得分:1)

你应该这样做:

$("#s_premise_description").html("<img src='scenario/images/" + myVariable + "' />");
                                           ^                                  ^