JavaScriptはファイルパスの保存ウィンドウをイジェクトする(XPテストOK)

2955 ワード

保存ファイルダイアログを開くにはMSCommung.Common Dialogオブジェクトを使用して、タイプフィルタを設定できますが、MaxFileSize属性を設定する必要があります.そうでないとエラーが発生します.その具体的な実現コードは以下の通りです.
テストはie 5678で全部できます.XPシステムでできます.win 7でnew ActiveXObject(MSCommung.Common.Dialog)のオブジェクトを間違えて作成できません.この点は多くの資料を探しましたが、まだ解決できないようです.最後はやはりfileコントロールで行うことをオススメします.
もしどの達人がもっと便利な解決があれば、教えてください!!
 1 <script>
2 function SaveAs() {
3 var fd = new ActiveXObject("MSComDlg.CommonDialog");
4 fd.Filter = "All Files (*.*)";
5 fd.FilterIndex = 2;
6 //fd.Filter = " (*.jpg;*.jpeg;*.gif)|*.jpg;*.jpeg;*.gif"; //fd.Filter = "Microsoft Office Excel(*.xls)|*.xsl;|Microsoft Office Word(*.doc)|*.doc;";
7 // MaxFileSize.
8 fd.MaxFileSize = 128;
9
10 //
11 fd.ShowSave();
12 alert(fd.FileName);
13 }
14 </script>
15
16 <body>
17 <form>
18 <a href="" onclick="SaveAs()">test</a>
19 </form>
20 </body>
メソッドに表示されるダイアログ ShowOpenは「開く」ダイアログを表示します. ShowSaveは「名前を付けて保存」ダイアログを表示します. ShowColorは「色」ダイアログを表示します. ShowFontはフォントダイアログを表示します. ShowPrinterは「印刷」または「印刷オプション」ダイアログを表示します. ShowHelp Windowsヘルプエンジンを起動します.