出于某种原因,当我尝试在.html()
内添加带有“&(amp)”的字符串时,该函数会抛出无法识别的表达式错误。你知道如何转换&
字符串或者如何最好地将我想要的字符串插入相应的选择器吗?
var img_description = "Aluminum Desktop Computer, Keyboard & Mouse with Clipping Paths";
$(img_description).html(img_description);
请记住,在我的代码中img_description
是一个动态变量。
答案 0 :(得分:4)
这是一个无效的选择器,第一部分需要是你要替换html的元素。对于此示例,我们可以替换ID为test
演示:http://jsfiddle.net/tymeJV/YKhAa/1/
$("#test").html(img_description);
测试前的#
是选择一个特定ID(在我们的例子中,ID为test
)。
您应该熟悉选择器,这里是API的链接:http://api.jquery.com/category/selectors/
答案 1 :(得分:2)
这很好:
$(document).ready(function() {
$('p').html('&');
});
你的代码错了。您尝试使用html作为选择器和html。
答案 2 :(得分:0)
你要做的事情毫无意义;你不能用任意字符串创建一个jQuery对象,所以它被解释为元素的选择器。 {/ 3}}
中介绍了该选择器中&符号(&)的问题使用任何元字符(例如!"#$%&'()* +,。/:;< =>?@ [] ^`{| }〜)作为名称的文字部分,必须使用两个反斜杠进行转义:\\。例如,id =" foo.bar"的元素可以使用选择器$(" #foo \\。bar")。
然而,即使你这样做,第一部分也不会为你做任何有用的事情,所以你不会发生任何事情。您需要首先选择至少一个元素或创建一个新元素,然后才能使用.html()
设置其HTML内容(这将很乐意接受包含&
的字符串,而无需您执行任何操作)。