以下のコードがあります。ステートメント 1 は、平均サイズ (~300 ~ 400 KB) の xml ファイルをロードし、その内容を文字列変数 (xmlContent) に格納します。ステートメント 2 は、jsp 変数 xmlContent の値を javascript 変数 xmlText に入れます。ステートメント 3 は、javascript で XMLDocument オブジェクトを作成しようとします (文字列を xml ドキュメントとしてロードして、DOM メソッドで解析できるようにします)。
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>