Как я могу поместить HTML-текст в метку с помощью xsl? - PullRequest
0 голосов
/ 15 июня 2010

Предположим, у меня есть XML-документ. У меня есть тег, содержащий HTML-текст. Я хочу отобразить этот текст с помощью xsl. Html-тег - htmlInfo.

Я думал, что могу поставить это на этикетке (в xsl), но это не работает Что я могу сделать?

1 Ответ

1 голос
/ 15 июня 2010

Вам, вероятно, придется закодировать его в свой XML, чтобы он выглядел так:

<tableInfo> 
    <id>1</id> 
    <htmlInfo>
        &lt;html xmlns='w3.org/1999/xhtml'&gt;&lt;head &gt;&lt;/head&gt; &lt;body&gt;&lt;p&gt;xzxzxzxzxz&lt;/p&gt; &lt;p&gt;hghghgh&lt;/p&gt; &lt;/body&gt;&lt;/html&gt;
    </htmlInfo>
<tableInfo>

Таким образом, все <символы были заменены на <code>&lt;, а все> символы были заменены на &gt;. И должно быть &amp; ... Если вы используете .NET, не используйте String.Replace, но используйте пространство имен System.Xml для правильной сборки XmlDocument. Это сделает кодировку для вас. Например, в VB.Net:

Dim stringBuilder As New StringBuilder() 
Dim stringWriter As New StringWriter(stringBuilder) 
Dim xmlTextWriter As New XmlTextWriter(stringWriter) 

xmlTextWriter.WriteStartElement("item") 
xmlTextWriter.WriteAttributeString("id", id.ToString()) 
xmlTextWriter.WriteAttributeString("key", key) 
xmlTextWriter.WriteValue(value) 
xmlTextWriter.WriteEndElement() 

Return stringBuilder.ToString()

Тогда ваш XSL должен быть в состоянии справиться с этим, и если вы выводите преобразование, например, в файл HTML, &lt; и другие данные должны быть правильно '' 'в выводе, и ваш HTML должен быть действительным .

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