2009-05-04 7 views
0

私はJavaScript経由でXMlドキュメントを生成しており、ローカルマシンに保存するようにユーザーに要求する必要があります。どのようにXMLファイルを生成し、ユーザーがjavascriptを使用してローカルに保存できるようにするのですか?

これは、現時点で私が持っているコードです:

var xmlWindow = window.open("", ""); 
xmlWindow.document.write("<node>data</node>"); 

これは、ユーザーが[ファイル]を打つことができる、新しいウィンドウにXMLを書き込み>ダウンロードして保存します。

  1. これを行うためのこれ以上の方法はありますか?
  2. xmlが正しく表示されるように、新しいウィンドウのmimeTypeを設定する方法はありますか?
  3. タイトルを指定する方法はありますか?ユーザーが保存をヒットしたときに、ファイル名が正しく設定されていますか?

注:ほとんどのbroser(IE6、IE7、FF、Chrome)と互換性が必要です。

答えて

0

「ローカルに保存する」:ブラウザ間で互換性がある場合は難しい呼び出しです。 this postを参照してください。

TiddlyWikiは、ユーザーが特定のファイルをインストールすることによってのみ、一部のブラウザ(サポートしているブラウザがわからないブラウザ)でこれを行うことができます。

+0

私は実際にユーザーの介入なしにローカルに書き込むつもりはありません。あたかもファイルがサーバから来たかのように 'ファイル保存'ダイアログボックスを作成するだけです。 – alumb

2

XMLHttpRequestを使用してXMLをサーバー上のスクリプトに送信してxmlファイルを作成し、window.locationを新しいxmlファイルの場所に設定できます。彼らはそれを保存するように求められます。

+0

+1。または、ラウンドトリップを避けるためにサーバーにXMLを生成します。不幸なことに、 –

+0

、これは不可能です。これはすべてのクライアント側でなければなりません。私はサーバー側を制御しません。 – alumb

関連する問題