0

我写了以下代码:

//HTML Page

//onpage load 
<body onload="RenderContent('{{ name }}');"> 

  <div id="cWrite"></div> 
  <form method="POST" action="/save/">{% csrf_token %}
    <input type="submit" value="Save Page"/>
  </form>

Javascript函数:

function RenderContent(ctext)
{
  var ntext = ctext;

  ntext = ntext.replace('&alt;','<');
  ntext = ntext.replace('&quot;','\"');
  ntext = ntext.replace('&gt;','>');

  document.getElementById("cWrite").innerHTML = ntext;
}

在我发布内容后,name看起来像:

<span id="newid" style="font-size: 10pt;">
  Write something! To Write,just press the edit button above...
</span> 
<span id="newid" style="font-size: 10pt;">
  Write something! To Write,just press the edit button above...
</span>

但我不希望它作为 div innerHTML 中的字符串,我希望它是 HTML 内容,该RenderContent功能正常工作(它<span id...在警报中显示上述内容)

如何将其转换为 div 的 innerHTML?

//Updated question

ok...dont call the function...what about this

 <div id="cWrite">{{ name }}</div> //html

并且传递的字符串({{ name }})是

<span id="newid" style="font-size: 10pt;">Write something! To Write,just press the edit button above...</span>

它在字符串中显示 HTMLelements 而不是 HTML .... 下面是 POST 后 HTML 文件的源代码(我在 {{ name }} 中得到的字符串)

<div id="cWrite">&lt;span id=&quot;newid&quot; style=&quot;font-size: 10pt;&quot;&gt;Write something! To Write,just press the edit button above...&lt;/span&gt;</div>
4

0 回答 0