XML : How to serialize text that contains mixed HTML & XML to a string?

This might be ridiculous, but I have a C# function that returns a string to JavaScript via AJAX. The first part of the string is HTML, and the second part is XML. The string will look something like:

  """  <b>Some HTML</b> - this entire string is returned from the server.  <i>I have no control over it</i>.    <br/>    <?xml version="1.0"?>  <catalog>     <book id="bk101">        <author>Gambardella, Matthew</author>        <title>XML Developer's Guide</title>        <genre>Computer</genre>        <price>44.95</price>        <publish_date>2000-10-01</publish_date>        <description>An in-depth look at creating applications         with XML.</description>     </book>   </catalog>  </xml>  """    

Then I have a function that creates a jQuery UI modal dialogue that contains this string as the main text. It correctly renders the first part as HTML, but the second part (the XML) is invisible

What I need is to render the HTML as it is now, but also render out the XML as a plaintext string (as you see in the example above). Ideally, I would like a server-side solution, but I am guessing it has to be client-side.

I would use something like new XMLSerializer()).serializeToString(combinedString) but won't that also get rid of the HTML tags?

Note: I do not know the HTML text ahead of time. I don't know if it will be seperated by newlines, <p> tags, <div>'s, or whatever else, so I can't exactly do something like String.Split('\n').

No comments:

Post a Comment