掲示板に書き込みをすると同時にウィンドウを閉じる方法を考えたい

このQ&Aのポイント
  • APESKINという掲示板を使っていて、書き込みをすると新規ウィンドウが開く仕様になっています。しかし、新規ウィンドウを閉じる方法がわからず困っています。
  • 現在使用しているスクリプトでは親ページのLOCATION.HREFを変更することができますが、新規ウィンドウを閉じることはできません。したがって、新しいウィンドウを開いたまま書き込みをすると、デザインに問題が生じます。
  • 解決策としては、SUBMITボタンのONCLICKイベント内に追加のスクリプトを書き込むことです。しかし、現在のスクリプトではセミコロン(;)を使用するとREMOTEが実行されなくなります。REMOTEは、書き込みが正常に行われたことを示すために必要です。
回答を見る
  • ベストアンサー

掲示板に書き込みをすると同時にウィンドウを閉じる

APESKINという掲示板を使っていて、次のように掲示板をカスタマイズしました。 1.BBSページ内には書き込みフォームを作らず、「書き込み」と書いたテキスト(リンク)で新規ウィンドウを開く。 2.新規ウィンドウ内のページに書き込みフォーム、書き込みをすると、さっきの親ウィンドウ内に書き込みが適用される。 ただ、このままだと新規ウィンドウの方も書き込み後、BBSページ(CGIファイルですね)に移ってしまいます。 デザイン上、新規ウィンドウはサイズ変更やスクロールバーの表示を出来なくしてるので、その中でBBSページを表示すると非常に見た目が悪いのです。 その為、書き込みをすると同時に、その新規ウィンドウを閉じるように設定したいのです。 以下は使っているスクリプトのソース。 <script type="text/javascript"> <!-- function remote(url) { opener.location.href = url } function CloseWin(){ window.close(); } // --> </SCRIPT> そして以下が書き込みを実行するSUBMITボタン(デザイン上、画像を使っています)。 <input type="image" src="xxx.jpg" name="submit" value=" Submit " onclick="javascript:remote('index.htm')"> 現段階では、親ウィンドウをREMOTEすることは出来ていますが、ウィンドウを閉じることは出来ません。 onclick内で「;」を使ってスクリプトを追加すると、REMOTEが実行されなくなります。 書き込みがされたことを明確に示す為、親ページのREMOTEは必要不可欠です。 これはどの様に対処したら良いでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

状況やページ構成が把握できていませんが、submitが完了してからcloseしてはどうでしょうか? 完了すると、CGI(BBS)の画面になるのであれば、その画面でcloseを実行すればいいでしょう。 もちろん、無条件にcloseしてしまっては普通の表示もままならないので、親窓が存在する(=自身が小窓)時だけcloseするようにします。 ↓bbsの画面(apeskin)に <body onload="if(window.opener)window.close()">

taku17
質問者

お礼

素晴らしいです、解決しました! たったあれだけの情報で解決策を見つけるなんてすごいですね。感動しました! 本当にありがとうございます。

関連するQ&A

  • Firefoxでwindow.close()が効きません

    Win、MacともIEでは問題ないのですが、Firefoxでwindow.close()が効きません。 Firefoxのバージョンは、Windows→1.0.7、Mac→1.5.0.1です。 ソースは以下のとおりです。 <form> <input type="button" name="Submit" value="ウィンドウを閉じる" onClick="javascript:window.close();"> </form> また、以下の方法も試してみたのですが動作しませんでした。 <SCRIPT language="JavaScript"> <!-- function CloseWin(){ window.close(); } // --> </SCRIPT> <FORM> <INPUT type="button" value="ウィンドウを閉じる" onClick="CloseWin()"> </FORM> aタグのターゲットブランクで別ウィンドウを開いた場合です。よろしくお願いいたします。

  • ウィンドウを閉じるボタン

    おそらく初歩的な質問ですがよろしくおねがいします。javaスクリプトはフリーのものをコピペで使うだけで、まったくの素人です。。。 よくありがちな、子ウィンドウを閉じるのに使用する”ウィンドウを閉じる”というjavaスクリプトですが ↓ <SCRIPT language="JavaScript"> <!-- function CloseWin(){ window.close(); } // --> </SCRIPT> これをそのままhtml内に挿入し、いざ使用してみると、わざわざダイアログが開いて”ウィンドウは表示中のwebページにより閉じられようとしています。このウィンドウを閉じますか?”と確認してきます(win/IE5.5) 普通こういうスクリプトを使用して子ウィンドウを開くサイトをみてもこのようにダイアログは開くことありませんよね。 ダイアログを開かせずに即ウィンドウを閉じたいのですが、どうすればよいのでしょうか?もしかして親ウィンドウ側にも何か記述が必要なのでしょうか?

  • フレームにすると

    はじめまして。 javaについては全くの素人です。 お力を貸していただきたくて投稿いたしました。 以下の様なページを作り、 <HEAD> <TITLE>ウィンドウを閉じる</TITLE> <SCRIPT language="JavaScript"> <!-- function CloseWin(){ window.close(); } // --> </SCRIPT> </HEAD> <FORM> <INPUT type="button" value="ウィンドウを閉じる" onClick="CloseWin()"> </FORM> </BODY> </HTML> テストしたら、「ウィンドウを閉じる」ボタンは機能したのですが、このhtmlファイルをフレームの一つのして読み込むと機能しません。 なぜなんでしょうか? どのようにすれば、機能するようになるのでしょうか? 大変初歩的な質問ですが、周りにだれも教えてくれるものがいませんので困っております。 よろしくお願いします。

  • 別窓で掲示板を利用したい

    お世話になります。 あるサイト制作で、縦幅が500pxと固定になっています。 背景に使う画像がそこまでなのでその範囲内でページを作っています。 ただ掲示板や買い物かごを利用するとなると縦幅が下にのびるのでデザイン上はとても格好悪いという状態です。 そこで別窓を開いて利用して貰いたいと考えています。 掲示板の新規投稿欄や買い物かごの「注文する」は元ページにあるのですがそこからcgiへ渡すデータを新しいウィンドウへどうやればうまく渡せるでしょうか? 正確には欲しいサイズで開いて欲しいのです。 <form・・・>にtarget="blank"指定をすると別窓は開きますがブラウザ依存の幅で開いてしまいます。 これを500*500等の指定サイズで開きたいのです。 素人考えで、 <Script Laungage='JavaScript'> function ToOrder() { frmSend.submit(); location.href="../cgi-bin/order.cgi"; } </script> <input・・・>で OnClick="ToOrder();"とやりましたがうまくいきません。 <input>に新窓の指定をすると新しい窓と元ページ、どちらもCGIへ移動してしまいました。。。 しっかり学んで行かねばなりませんが 今この問題を解決するためにアドバイスをいただければと思います。 よろしくお願いいたします。

  • 親、子、孫のウインドウを同時に表示するのは?

    親と子のウンドウを同時に開くのは 親のファイルに以下のように書けば <HEAD> <SCRIPT LANGUAGE="JavaScript"> <!--// function openWindow() { window.open("","windowname"); } //--> </SCRIPT> </HEAD> <BODY> <A HREF="ko.html" onClick=openWindow() TARGET="windowname">子ウインドウ</A> </BODY> 出来るんですが、子のファイルに同じように書くと 子のウインドウが孫に変わってしまいます。 親、子、孫を同時に表示するのには、どうすればよいか、よろしくお願いします。

  • JavaScriptについてご教授願います。

    お世話になります。 JavaScriptについてご教授願います。 main.html ----------------------------------------------------------- <HTML> <HEAD> </head> <body> <INPUT TYPE=BUTTON value="閉じる" onClick="CloseWin()"> </body> </html> ----------------------------------------------------------- kozin.html ----------------------------------------------------------- <HTML> <HEAD> <script language="JavaScript"> function CloseWin(){ window.close(); } </script> </head> <body> 個人情報 </body> </html> ----------------------------------------------------------- 実現したいことはmain.htmlのボタンを押下することによって kozin.htmlの画面を閉じるということです。 お手数をお掛け致しますがどうぞよろしくお願いいたします。

  • 掲示板のカスタマイズ

    ロケットBBSでのスキンのカスタマイズについて質問です。 BBSの書き込みフォームを表示させないためにはどうすればよいのでしょうか?書き込みフォームは別のページに表示してBBSのページには書き込みだけ見れるようにしたいのですが、あまりRBMLが分からなくて困っています。 RBMLに詳しい方などおられましたら回答をお願いします。

  • submitがおされた同時に JavaScript の処理は可能?

    質問のとおりですが、 <script>   function push(){    ★処理内容   } <script> <from action="/test/servlet/sample" method="post"> <input type="submit" valeu="ボタン" onclick="push()"> </from> でこの時 submit が押されたと同時にJavaScriptの処理も一緒に実行させたいのですが、可能でしょうか? ★の処理内容はsubmitボタンを1回押したらまたもう一回submitボタンを押されたようにする。つまりボタンを1回押したら2回分押したことと同じようにする。 とこんなかんじの処理なんですが…。 アドバイスお願いします。

  • 掲示板へのおかしな書き込みを防止したい

    個人で趣味に関するサイトを立ち上げております。 サイト内には、掲示板を設け、誰でも書き込みができるようにしてあります。掲示板は、フリーで配付されていたCGIスクリプトを作成者様の許可を得て少し改造したものです。 最近、おかしな書き込みがされるようになりました。 いかにも怪しいURLが羅列されている、といったものです。(もちろんクリックしたことはありません) 毎日同じドメインのメールアドレスが記載されているので、アクセス制限をかけようと思い、ホストなどを調べようとしたのですが、書き込みをされた時間帯にサイトトップページのカウンターも掲示板のカウンターも回っておらず、調べることができません。 掲示板のURLを変更したりもしましたが、書き込みは変わらずに続きます。 書き込みできなくするにはどのような方法があるでしょうか。 詳しい方がいらっしゃいましたら、ご助言をお願いいたします。

  • Submitで新しいウィンドゥが開いてしまう

    Submitで新しいウィンドゥが開いてしまう お世話になっております。 現在、C#,JavaScript,Oracle(10g)で画面作成をしております。 作成しておりますのは 親画面から呼ばれる子画面(親からサイズ指定されて開かれる)で、 親画面のレコード表示順列を並び替える機能を持たせています。 その子画面に配置した「保存」ボタンのonclickイベントを JavaScript(外部.jsファイルを呼ぶ)で作成しています。 (function Save();) Saveの内容はhtml内で持つ各変数をサーバーに送るのに適した形状への 並び替え等で、最後にSubmit(); をしています。 ※ (parent.[form id].document.[form id].submit();) 現在、Submit後現在開かれている子画面とは別に、 新しいウィンドゥが開かれてしまいます。 htmlのFORMのパラメータに「TARGET="_blank"」が入ってはいないのでJS側、 ※印部分の記述を変えればよいのだろうと推測しているのですが、 どうすればよいのでしょうか? JavaScript Submit 開かない(or開く)などのキーワードで検索を していますがなかなか解決できていない状況です。宜しくお願いします。