Лучший способ сохранить сгенерированный пользователем HTML через почтовый запрос? - PullRequest
0 голосов
/ 10 февраля 2009

Я создаю сайт, который является интерфейсом, используемым для создания файлов XML, которые считываются в качестве входных данных программой на стороне сервера.

Сайт позволяет пользователям динамически создавать блоки HTML. Каждый блок может рассматриваться как объект и содержит несколько полей ввода. Когда пользователь отправляет форму, данные превращаются в файл XML.

Каков наилучший способ сохранить / перестроить сгенерированный пользователем HTML в запросе на публикацию? Я использую JQuery, но не AJAX.

Ответы [ 4 ]

2 голосов
/ 10 февраля 2009

Вы, вероятно, ищете 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 голос
/ 10 февраля 2009

Что сказал Страгер . Кроме того, с помощью Javascript вы можете получить строку HTML для любого элемента:

document.getElementById('myimportantthing').innerHTML

И отправьте это на ваш сервер для включения в ваш элемент CDATA XML, и вы должны быть в порядке.

Хотя сама идея захвата HTML для отправки в API для какой-то цели просто пахнет запахом кода, не зная, что вы делаете, я не могу сказать об этом намного больше.

0 голосов
/ 10 февраля 2009

Я хотел бы отметить, что современный XHTML стремится быть подмножеством XML. И я думаю, что Лука прав.

0 голосов
/ 10 февраля 2009

Почему вы обрабатываете HTML в XML, если хотите сохранить HTML?

Просто сохраните HTML на сервере, а затем, когда делаете запрос ajax, вы можете получить все дерево HTML и вставить его в DOM (без перестройки).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...