【问题标题】:Format Html String in javascript在javascript中格式化Html字符串
【发布时间】:2014-01-17 13:33:56
【问题描述】:

下面是我的代码片段

{% autoescape on %}
                        <li><h4  id="instruction" style = "word-wrap: break-word">{{question_1}}</h4></li>
{% endautoescape %}

say {{question_1}}(来自服务器端的变量渲染)是“this is an example ”,输出将类似于

this is *an example*

但是当我将内容从 javascript 更改为类似:

document.getElementById("instruction").innerHTML = "this is <i>example 2</i>";

html 的内容发生了变化,但不是斜体。我该怎么做。谢谢

【问题讨论】:

  • 发布更改html的javascript代码,也许有人可以弄清楚。
  • document.getElementById('instruction').innerHTML = 'this is &lt;i&gt;example 2&lt;/i&gt;'?
  • 你有一些覆盖斜体的 CSS 吗?
  • 不,不在页面上。只是HTML
  • 你能做个小提琴什么的吗?因为如果您不覆盖斜体样式,这应该可以工作。

标签: javascript google-app-engine jinja2


【解决方案1】:

这就是问题所在。我注意到您只有 h4 标记有两个无效的 ID。 浏览器将呈现第一个 Id 并忽略第二个。因此,我建议您首先尝试了解您的代码在使用一个 id 标签时是否有效。然后我们就可以知道问题是从哪里来的。

【讨论】:

    【解决方案2】:

    刚刚发现问题出在未正确解码的标签上。所以,我只是这样做了

    document.getElementById("instruction").innerHTML = "this is <i>example 2</i>".replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&quot;/g, '"').replace(/&apos;/g, '\'');
    

    这对我很有效。谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-23
      • 2012-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多