最近、メニュー ツールバーなしで IE を開く必要がある JSP Web ページを作成したので、window.open を使用して開くことを考えました。しかし、以前に開いていたフォームを閉じていない場合、フォームを開くと、以前に開いていたフォーム上に新しいフォームが開かれ、以前のウィンドウが置き換えられることがわかりました。情報を検索してテストした結果、フォームを開くときに指定したフォーム名が現在のフォームと同じ名前である場合、そのフォームで開かれることがわかりました。たとえば、次のような状況です:
window.open("view_svg.jsp?ukey=<%=ukey%>&itemID=<%=itemID%>&charset=UTF-8","newWindow","height='100%' , width='100%',toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=no,status=no");
この方法で開かれた各フォームは、newWindow という名前のフォームで開かれます。
注: フォームの名前とタイトルは異なります。
1.window.open(urlStr,'_blank','');
_blank パラメータは、新しいウィンドウを開くことを意味します。
2. 次の方法を使用して、ウィンドウを開くたびに異なる名前を付けることもできます。
<% Random rd = new Random(); int i = rd.nextInt(100)+1; String ranStr = String.valueOf(i); %> <script type="text/javascript"> function doclose(){ var currnwin = window.open("view_svg.jsp?ukey=<%=ukey%>&itemID=<%=itemID%>&charset=UTF-8","<%=ranStr%>","height='100%', width='100%',toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=no,status=no"); window.opener=null; window.close(); window.focus(); } </script>
次に、JavaScript window.open を使用して新しいウィンドウを開く方法を紹介します
open() メソッドは、既存または新しく作成されたブラウザ ウィンドウを検索できます。
文法:
window.open([URL], [ウィンドウ名], [パラメータ文字列])
パラメータの説明:
URL: オプションのパラメーター。ウィンドウに表示される Web ページの URL またはパス。このパラメータが省略されている場合、またはその値が空の文字列である場合、ドキュメントはウィンドウに表示されません。
ウィンドウ名: オプションのパラメータ、開いているウィンドウの名前。
1. 名前は文字、数字、下線文字で構成されます。
2. 「_top」、「_blank」、「_selft」は特別な意味を持つ名前です。
_blank: 対象ページを別ウィンドウで表示します
_self: 現在のウィンドウに対象の Web ページを表示します
_top: フレーム Web ページの上部ウィンドウに対象の Web ページを表示します
3. 同じ名前のウィンドウは 1 つだけ作成できます。複数のウィンドウを作成する場合、同じ名前は使用できません。
4.名前にはスペースを含めることはできません。
パラメータ文字列: オプションのパラメータ、ウィンドウパラメータを設定します。各パラメータはカンマで区切られます。
パラメータテーブル:
例: http://www.baidu.com Web サイトを開きます。サイズは 300px * 200px、メニュー、ツールバー、ステータス バーはなく、スクロール バー ウィンドウはありません:
<script type="text/javascript"> window.open('http://www.baidu.com','_blank','width=300,height=200,menubar=no,toolbar=no, status=no,scrollbars=yes') </script>
注意事項: ここではブラウザの互換性の問題に必ず注意してください。