2

如果我在页面加载时有一个包含以下内容的文本区域:

<h1>Hello</h1>
<p>&lt;h1&gt;Hello world&lt;/h1&gt;</p>

我将 CKEditor 应用于 textarea,CKEditor 将内容呈现为好像两行都是 h1 元素,即使其中一个是包裹在段落中的实体。

为了清楚起见,我希望看到的是:


你好

<h1>Hello world</h1>


我实际得到的是:


你好

你好世界


奇怪的是,如果我<h1>Hello world</h1>在编辑器中输入,它将在源代码中生成实体编码字符串并按预期显示(打印以显示为输入)。

4

1 回答 1

6

那是因为即使在 textarea 中,您也必须对 HTML 进行编码。所以实际上你应该将它的内容设置为:

&lt;h1&gt;Hello&lt;/h1&gt;
&lt;p&gt;&amp;lt;h1&amp;gt;Hello world&amp;lt;/h1&amp;gt;&lt;/p&gt;

如您所见 - Hello world 标头被编码两次。

于 2012-07-16T08:21:34.270 回答