跨帖子请求保留用户生成的HTML的最佳方法?

时间:2009-02-10 00:30:53

标签: javascript jquery html user-input

我正在构建一个站点,该站点是用于创建XML文件的接口,这些文件由服务器端程序读取为输入。

该网站允许用户动态创建HTML块。每个块都可以被视为一个对象,并包含几个输入字段。当用户提交表单时,数据将变为XML文件。

在帖子请求中保留/重建用户生成的HTML的最佳方法是什么?我使用的是JQuery,但不是AJAX。

4 个答案:

答案 0 :(得分:2)

您可能正在寻找XML的CDATA

<post>
<![CDATA[

<p>Hello, world!
<span style="color: green;">Green text</span>
<!-- oops, didn't close the p! -->

<ul>
    <li>list
    <li>doesn't
    <li>have closing
    <li>&lt;/li> (note the lack of use of &gt;)
</ul>

]]>
</post>

请确保在用户输入中转义]]>,否则他们可能会利用您对CDATA的使用并破坏您的XML!

答案 1 :(得分:1)

strager said。另外,使用Javascript,您可以获取任何元素的HTML字符串:

document.getElementById('myimportantthing').innerHTML

然后将其发送到您的服务器以包含在您的CDATA XML元素中,您应该很好。

虽然为了某种目的捕获HTML以发送到API的整个想法只是充满了代码味道,但不知道你在做什么,我不能说更多。

答案 2 :(得分:0)

如果要保留 HTML,为什么要将HTML处理为XML?

只需将HTML保留在服务器上,然后在发出ajax请求时,您可以获取整个HTML树并将其粘贴到DOM中(无需重新构建)。

答案 3 :(得分:0)

我想注意现代XHTML的目标是成为XML的一个子集。我认为卢卡是对的。