2014-01-08 22 views
5

xmlページとしてiframeに埋め込むgwt rpc呼び出しからXML文字列を取得しました。私が見たいと思うのは、ブラウザが通常のhtmlのものに囲まれた折りたたみ可能な構造を持つ、きれいに印刷されたxmlツリーです。つまり、XMLのインプレッションビューです。XMLをiframe内の文字列からXMLTreeとして表示

iframeのsrcdoc属性を使用することはできません。これはIE8でサポートされていない(最も早くサポートする必要がある)ため、次の問題はJavaScriptライブラリが許可されていないためです。

var iframeDocument = document.querySelector('#foo').contentWindow.document; 
iframeDocument.open('text/xml', 'replace'); // Also tested without Args 
iframeDocument.write(xmlcontent); 
iframeDocument.close(); 

Firefoxは少なくともがXMLタグを示していますがフォーマットされていないと、木のないChromeとIEのHTMLタグとちょうどラインナップの内容を削除している間:私が試した何

。私が試した

Nextthingは、Firefoxが正確に他の人が、以前と同じ出力を生成しながら、私が何をしたいんここ

<iframe id="xmlframe" src="test.xml" name="thexml"> 

です。これもうまくいきませんし、よく私はtest.xmlを持っていません。返された他のものと一緒に文字列変数を持っています...

これも可能ですか?コンテンツとしてXMLストリングを使用して新しいポップアップを開く方法はありませんか? L.Monty同様

+0

これに関する解決策はまだありますか? – lbstr

+2

いいえ解決策は見つかりませんでした。すべてのブラウザがこれを別々に処理し、ブラウザにxmlをiframe内のxmlとして解析させることはできないようです。また、iframeの内部でdataurlを使ってテストしました。だから私はnormalyがこれのポップアップで開く通常のXMLダウンロードを思いついた。 –

+0

「<' and '>」を「<」と「>」でエスケープする方法はありますか? –

答えて

1

は、ブラウザがHTMLとして全てのタグを解釈しようとしないように、私は&gt;&lt;、すべて>を使用してXML文字列内のすべての<に代わるコメントで述べています。

あなたのツリーのようなビューでは、私は自分の関数を書いて、各XML終了タグの後に改行を加えます+次のXML-openタグごとに変数に数えることができるスペースの量。 XML-Closeタグごとにこのカウンタを減らすことは忘れてください。

関連する問題