window.open 時の動作について教えてください。

[新着] Webテンプレートを仮オープンしました



0   名前: tomo-mikan : 2007/05/11(金) 15:24  ID:fdQcd65N sub-4B
window.openが実行されたときの処理について、1つ不明な動作をしております。
教えていただけないでしょうか?

【事象】
HTMLで作成したWeb画面上の「出力」ボタンより、
Window.open関数でExcelファイルを出力します。
(ファイル名も指定します。)

window.open("sumple.xls","sumple");

そして、そのExcelファイルが開いた状態で、再度「出力」ボタンを押下すると、
1回目のクリックで、既存のExcel画面が閉じられます。
2回目のクリックで、再びExcelファイルを出力します。

【教えていただきたいこと…】
・Window.open関数で既存のファイルのチェックを行っているということでしょうか?
・また、そのファイルがある/なしの存在は判断できるのでしょうか?

【ソース】
<html>
<script language="JavaScript">
var wnd;

function wndOpn() {
wnd = window.open("sumple.xls","sumple");
}

</script>
<body>
<input type="button" name="bnt" value="出力" onclick="wndOpn()">
</body>
</html>

よろしくお願いします。

1   名前: 元帥 : 2007/05/11(金) 15:24  [URL]  ID:fRYBo5Oz sub-bK
前の質問は?
http://www.tagindex.com/cgi-lib/q4bbs/patio.cgi?mode=view&no=1129

参考:掲示板Q&A 回答がありません(質問者向け)
http://www.tagindex.com/bbs/qa12.html

> そして、そのExcelファイルが開いた状態で、再度「出力」ボタンを押下すると、
> 1回目のクリックで、既存のExcel画面が閉じられます。
> 2回目のクリックで、再びExcelファイルを出力します。

という現象は再現しなかったので、よく分からんのですが…。

> ・Window.open関数で既存のファイルのチェックを行っているということでしょうか?
ファイルのチェックではなく、ウインドウのチェックを行っているのだと思います。
sumpleで指定して開きましたから、そのウインドウに対してまた開きます。
ブラウザはファイルの種類に応じて、それ相応の対応をします。
環境によっては、クリックした数だけExcelが立ち上がるかもしれません。

> ・また、そのファイルがある/なしの存在は判断できるのでしょうか?
ローカルのアプリケーションでxlsファイルを開いている状態か否か、という事でしたら、JavaScriptでは不可能です。

ファイルを取得する部分はWebに依存、ファイルの編集はローカル依存という中途半端な事は考えずに、専用のブラウザを用意するか、JavaScript等を駆使してブラウザ上で編集可能にしてしまった方が何かと無難です。

# それにしてもsumpleって…(^^;

2   名前: tomo-mikan : 2007/05/11(金) 15:24  ID:fdQcd65N sub-4B
元帥 さま
ご回答ありがとうございました。
質問の文章が分かりにくくて申し訳ございませんでした。

ご回答いただいたとおり、同一のウィンドウ名を設定した際に
既に同じウインドウがあれば、そのウインドウを閉じているみたいですね。
(ウインドウズの種類により一概には言えませんが…)

>ファイルを取得する部分はWebに依存、ファイルの編集はローカル依存という中途半端な事は考えずに、
>専用のブラウザを用意するか、JavaScript等を駆使してブラウザ上で編集可能にしてしまった方が何かと無難です。

おっしゃるとおりですね〜。
既存のシステム改修を行っていますが、改修に与えられた期間と費用により、
対応が厳しかったので…、いろいろ足掻いていましたが…。

>それにしてもsumpleって…(^^;

本当ですね☆ 今気がつきました(笑)

ご回答、ありがとうございました。


一覧へ戻る