0

好的,我有一个字符串。

"<div class='down_arrow left_side'></div><div class='holder clearfix'><div class='topimg' style='background-image: url("+topimg+");'></div></div>";

我需要它是这样的

"<div class='down_arrow left_side'></div><div class='holder clearfix'><div class='topimg' style='background-image: url(' "+topimg+" ' );'></div></div>";

但额外的 ' 将关闭样式标签。

那么你是如何克服这个问题的呢?...我读过一些帖子,比如在引号前使用 \ ,但它并没有真正起作用。

只为某些人

var friinfo = document.createElement("DIV");
                friinfo.id = "friendsinfo";
                friinfo.className = "friendsinfo";      
                friinfo.innerHTML = "<div class='down_arrow left_side'></div><div class='holder clearfix'><div class='topimg' style='background-image: url(\"+topimg+\");'></div></div>";
                document.body.appendChild(friinfo);

这是实际的代码

所以只是为了强制执行这个问题,我想在下面的字符串中多加一层引号

"<div class='down_arrow left_side'></div><div class='holder clearfix'><div class='topimg' style='background-image: url("+topimg+");'></div></div>";

所以结果会是这样

"<div class='down_arrow left_side'></div><div class='holder clearfix'><div class='topimg' style='background-image: url(' "+topimg+" ' );'></div></div>";

带引号'

4

3 回答 3

2
"<div class=\"down_arrow left_side\"></div><div class=\"holder clearfix\"><div class=\"topimg\" style=\"background-image: url('" + topimg + "');\"></div></div>"
于 2012-10-01T10:35:15.187 回答
1

修改代码:

"<div class='down_arrow left_side'></div>    <div class='holder clearfix'><div class='topimg' style='background-image: url(\'"+topimg+"\' );'></div></div>";
于 2012-10-01T10:39:04.717 回答
1

您可以在 JavaScript 中使用 \ 转义引号,但在 HTML 中则不行。纯 HTML 解决方案称为 HTML 实体:

<div class='topimg' style='background-image: url(&quot;blah&quot);'>

...尽管通常更容易使用以下事实,即有两种引用样式可供您选择JavaScriptCSS需要:

<div class="topimg" style="background-image: url('blah');">

但是,如果您想将随机文本注入 HTML 属性,引号并不是您唯一的问题。您最好使用setAttribute()方法并让它负责转义。

于 2012-10-01T10:42:24.930 回答