jQuery的attr()转义&符号

don*_*onk 5 javascript jquery dom escaping

所以我试图通过javascript动态设置图像src属性,如下所示:

var url = 'query.php?m=traffic&q=getgraph&id='+pipeId+'&start=-3h';
console.log(url);
$('#3h').attr('src',url);
Run Code Online (Sandbox Code Playgroud)

问题是,它query.php?m=traffic&q=getgraph&id=1&start=-3h在控制台中显示如此,#3h图像元素的实际设置src是query.php?m=traffic&q=getgraph&id=1&start=-3h

然后,当然,它不起作用.如何避免jQuery的attr()方法的字符转义?关于如何实现我的目标的任何其他建议也是非常受欢迎的.

zzz*_*Bov 3

如果它不起作用,则不是因为&符号被转义了。作为 HTML 元素中的属性,所有 XML 实体都需要转义:

--+-------
< | &lt;
> | &gt;
" | &quot;
& | &amp;
Run Code Online (Sandbox Code Playgroud)

举个例子,如果我有index.php?foo=bar&buzz=baz,并且我想要一个a元素定位该页面,我需要像这样设置锚点:

<a href="index.php?foo=bar&amp;buzz=baz
Run Code Online (Sandbox Code Playgroud)

href 将被解码为:index.php?foo=bar&buzz=baz

我看看是否找不到适合您的相关文档。