たとえば、A.htmlというページから、B.htmlへとリンクを張っていて、
A.htmlからB.htmlへ同じウィンドウで移動した場合は、ブラウザの戻るを押せば、A.htmlをまた表示できますが、これをできなくする、ことはできませんでしょうか。

このQ&Aに関連する最新のQ&A

ブラウザの」に関するQ&A: ブラウザの更新

A 回答 (4件)

こんなのはどーでしょう。



A.html内に、

<a href="b.html" onclick="javascript:location.replace(this.href);
event.returnValue=false;
event.cancelBubble=true;">

としてみては?
    • good
    • 1

同じことにチャレンジしたことがあるのですが「できない」と思います。


というのも、JavaScriptでIEのオブジェクト操作ができてしまうとハッカーやらクラッカーの格好の的になっちゃいます。。

ということで代替案を考えた方がよろしいかと思います。
CGIに渡す場合でもMETHODをGETにできれば「GOTTi」「rittan」さんにおっしゃっている方法が利用できます。
ただし大量データを渡す必要やセキュリティが心配ということであれば、GET方式は推奨しかねますが・・

他にはウィンドウの「戻る」ボタンを非表示にするという方法もあります。
この方法は簡単で良いのですが「BackSpace」キーで戻るという抜け穴が・・

参考情報ということで!
    • good
    • 0

A.html内のB.htmlへのリンク部分を


<A HREF="javascript:window.location.replace('B.html')">ページBへ</A>
としてはどうでしょうか?
    • good
    • 0

「戻る」操作自体を禁止することは、おそらく不可能です。



ただし、次のような方法によって、A.html から B.html に移動した際に、「履歴」が残らず、B.html から「戻る」の操作を行うと、A.html には戻らなくなります。

具体的には、A.html から B.html への移動をただのリンクではなく、JavaScript で行います。

~~~スクリプトの部分~~~
<script language="JavaScript">
function DoReplace( strURL ){
window.location.replace( strURL );
}
</script>
~~~スクリプトの部分~~~

~~~リンクの部分~~~
<a href="#" onClick="javascript:DoReplace('B.html')">Bへ移動</a>
~~~リンクの部分~~~

この回答への補足

ありがとうございます。
ただ、今回の場合は、<form>の<input type>を使って、CGIにデータを渡し、
HTML文書を返す、というパターンです。
CGIから返ってきたHTMLドキュメントが表示されるブラウザで戻るボタンを押すと、CGIにデータを渡すHTMLのページに戻ります。
これを禁止できないでしょうか?

補足日時:2001/12/02 19:11
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q別窓ウィンドウから親ウィンドウの操作でopener.location.hrefで親ウィンドウに渡せる文字数について

非常に困っています。良かったら教えて下さい。
サブウィンドウズを閉じたときに親ウィンドウにある値を
渡して飛ばしたいのですが、かなり項目数が多くて、
javascriptエラーになります。
渡せる文字数は、何文字いないとかいう規定はあるのですか?
教えて下さい。

もし、あるのであれば、代替案はありますか?

Aベストアンサー

サンプル作ってみた

---"main.html"---
<form onsubmit="
window.name='main';
window.open('sub.html', '_blank');
return false;
">
<input type="submit" value="sub">
</form>


---"sub.html"---
<form action="http://www.google.com/search" target="main" >
<input name="q" value="javascript">
<input type="button" value="検索" onclick="
this.form.submit();
window.close();
">
</form>

Q画面遷移を無くすためajaxでメイン.htmlにsub.htmlを表示した時のsubmitの値取得

すでに単独では動作しているsub.htmlにinputボタンでサブミットし、input値だけではなく、当該formデータをajaxで処理した後サーバ側で受け取り処理しています。
これを、画面遷移を無くすためajaxでメイン.htmlにsub.htmlを$('#sample01').append(data)で表示すると動作はするのですが、クライアントよりsubmitする時にどうしても、ajaxではinputのvalue値しか取得できません。
value値だけではなく、その時form全体の値を取得する方法をご教示ください。

よろしくお願いします。

Aベストアンサー

ANo1です。

>formとしては取得できない状況です。
formが取得できれば良いということでしょうか。

どのような方法で処理なさっているのかまったくかりませんが、
>onclickで動作しています、
とのことなので、そのトリガーにしている要素は該当formの要素であろうと推測します。(違っていも同じことですが)
もしも、Jquery利用なのであれば、
 $(this).parent("form") あるいはparents()などでたどれば、簡単に取得できると思いますが・・・?

※ スマホからなのでこれ以上は無理(^_^;)

Qwindow.openで開いた子ウィンドウから親ウィンドウのjavascriptを実行するには

window.openで開いた子ウィンドウから親ウィンドウのjavascriptを実行するにはどうしたらよいのでしょうか。

子ウィンドウから
<INPUT TYPE="button" value=\"実行\" onClick=opener.document.jikkou();>

<INPUT TYPE="button" value=\"実行\" onClick=opener.jikkou();>
等のボタンを作ってみましたが、無反応でした。

すいません。宜しくお願いします。

Aベストアンサー

普通に実行できると思いますが・・・

//parent.htm
<script>
function jikkou(){
alert("ok");
}
</script>
<input type="button" value="open child" onclick="window.open('child.htm')">

//child.htm
<input type="button" value="jikkou" onclick="opener.jikkou()">

Qwindow.openで開いた別ウィンドウのリンクを親ウィンドウで開きたい

いつもお世話になっています。
index.htmlというページがあり、window.openでtest.htmlというウィンドウを開きます。
test.htmlの中に記述したリンクをindex.htmlと同じウィンドウに開きたいのですが、どう記述すればいいのでしょうか?
index.htmlを親とは見なさずparentではtest.htmlと同じウィンドウに開いてしまいます。
blankではindex.htmlとtest.htmlとも別のウィンドウに開いてしまいます。

おそらく初歩的な問題なのだと思いますが、どうかお知恵を貸して下さい。
普通ですが、test.htmlの現在の記述は以下です。
<a href="開きたいページ.html" target="_parent">ページを開く</a>

どうぞよろしくお願いします。

Aベストアンサー

こんにちは。開いた子ウィンドウの中でwindow.opener.location.href="http://www.example.com"などとなっていれば良いはずです。window.opener.location.replace(~)も有効かと。以下が参考になります。

http://shoyu-ramen23.jugem.jp/?eid=203
http://javascript.eweb-design.com/0515_os.html

以下のQ&Aも注意点として有用だと思いました。

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1221399962

その他、"javascript window 子ウィンドウから location"などと検索してみて下さい。

Q親ウィンドウから子ウィンドウの子ウィンドウを閉じたい

 親ウィンドウから子ウィンドウを開き、
その子ウィンドウで子ウィンドウ(孫ウィンドウ?)を開きます。
その状態で、親ウィンドウの画面移動で、子ウィンドウと孫ウィンドウを閉じたいのですが、できません。

JavaScript1--
 ssWin = window.open('---');
----
JavaScript2---
if(ssWin != null){ if (!ssWin.closed){ssWin.close(); }}
------
子ウィンドウまでは上記の方法で閉じれるのですが、孫ウィンドウの制御となると、どうやったらいいかわかりません。
 どなたかすいませんが、いい方法がありましたら、ご教授くださいませ。

Aベストアンサー

ちょっと名前を整理させて下さいませ。
親ウィンドウ→子ウィンドウ→孫ウィンドウ
という呼び名で呼ばせて頂きます。

あくまでアドバイス程度の物しかできないので何か他にいい方法があるのかもしれないですが、TENEHTさんはJavaScriptで普通の関係ならばウィンドウ制御プログラムはできる方とお見受けしますので簡単に書かせて頂きますね。

☆案1
【1】子ウィンドウに孫ウィンドウを閉じる関数を実装する。
【2】子ウィンドウ内、BODYタグのonUnloadで上記関数を実行する。
【3】親ウィンドウから子ウィンドウを閉じると孫ウィンドウが子ウィンドウによって閉じられる。

☆案2
【1】子ウィンドウに孫ウィンドウを閉じる関数を実装する。
【2】親ウィンドウから子ウィンドウ内の孫ウィンドウを呼び出す関数を実行する。
【3】親ウィンドウから子ウィンドウを閉じる。
※子ウィンドウ内の関数はssWin.○○()という形で簡単に呼び出せます。

こんな感じの実装で如何でしょうか?


人気Q&Aランキング

おすすめ情報