以下のコードがあります。文1は、平均サイズ(〜300-400KB)のXMLファイルをロードし、その内容を文字列変数(xmlContent)に格納します。ステートメント2は、jsp変数xmlContentの の値をjavascript変数xmlTextに設定します。ステートメント3は、javascriptでXMLDocumentオブジェクトを作成しようとします(DOMメソッドを通じて解析できるように、文字列をxmlドキュメントとしてロードします)。xmlを文字列としてロードし、jspとjavascriptで使用する
xmlファイルには一重引用符と二重引用符の両方が含まれており、&***;
などのエンティティも含まれている必要があります。今、なぜ3番目の文がnullを返すのですか?誰か説明できますか?
誰かがいくつかのエンコード/デコードを実行するかエスケープするなど、XML文字列データを転送するより良い方法を教えてもらえますか?
ありがとうございました。
<%
String xmlContent = FileReader.readFile("/xml/books.xml");
%>
<script type="text/javascript">
var xmlText = ' <% =xmlContent %> ';
new DOMParser().parseFromString(xmlText, "text/xml");
//I know that it will not work in IE
</script>