現在、ログインのページを作っているのですが、
ログイン後にログインのチェックを行うページへと遷移させ、
その後にメニュー画面を表示させているのですが、
ログインのチェック画面へ戻ることが出来ないようにしたいのです。

そこで、キーボード操作の禁止に付いてお聞きしたいのですが、
BackSpaceキーで前の画面に戻るのを禁止することはJavaScriptで出来るのでしょうか?
どなたか知っている方がいれば教えて下さい。

宜しくお願いします。

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

A 回答 (1件)

ブラウザの機能を制御することはできないのではないでしょうか。

(知らないだけかもしれませんが)
他の方法で、考えられる方法を書きます。

チェック画面から移動する時に、
<A href="javascript:location.replace('/sample.html');">履歴残さず次へ</A>
としてみてください。
ブラウザの履歴情報の現在のページを、次に遷移する先のページに上書きします。
これで戻りたくとも戻れなくなります。
    • good
    • 0
この回答へのお礼

madmanさん早速の御返事ありがとうございました。
replaceですか、初めて聞きました(^^;)
早速試してみたいと思います。

お礼日時:2002/02/08 09:20

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

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

Q簡易パスワードからログイン後のページを画面いっぱい

お世話になっております。
先ほど質問させていただきました簡易パスワードの件の続きになります・・・。

現在画面を3分割にしておりまして、このままパスワード入力後のページを表示させる際、3分割されたまま画面が表示されてしまいます。

<a href>より作成しているタグについては、target="_top"を加えて画面いっぱいに表示するように構成しているのですが、パスワードのところに加えるとステータスバーに「ページでエラーが発生しました」と表示されてしまいます。

どうすればいいでしょうか。

タグ構成は以下のとおりとなっています。


<A id="e-TaxQA"><FONT color=#006400 size="+2"><b>e-TaxQA</b></FONT></a><BR>
<center>
<script language="JavaScript"><!--
function myEnter(){
myPassWord=prompt("パスワード","");
if ( myPassWord == "015901" ) location.href = "\\\\共有サーバー\\U\\個人\\名前\\フォルダ\\各QA\\QA\\(一覧).htm";
else alert( "パスワードが違います!" );
}
// --></script>

<form>
<input type="button" value="☆★☆ログイン☆★☆" onclick="myEnter()">
</form>
</center><BR>

お世話になっております。
先ほど質問させていただきました簡易パスワードの件の続きになります・・・。

現在画面を3分割にしておりまして、このままパスワード入力後のページを表示させる際、3分割されたまま画面が表示されてしまいます。

<a href>より作成しているタグについては、target="_top"を加えて画面いっぱいに表示するように構成しているのですが、パスワードのところに加えるとステータスバーに「ページでエラーが発生しました」と表示されてしまいます。

どうすればいいでしょうか。

タグ構成は...続きを読む

Aベストアンサー

下記の部分を変更してください。
location.href=

top.location.href=

Q画面遷移時にデータを次のページに渡す処理

前回の質問が期限切れになってしまったので、ちょっと形を変えて再度質問します。
簡単な買い物かごのページを作成しています。
1.商品を選ぶページ(チェックボックスで選択します)
2.名前・配送先を入力するページ
3.確認するページ
4.買い物完了ページ
上記4つをサーバーを使わずにお客様に入力したデータ(商品と名前・配送先)を1.~4.まで渡していきたいのですが、それはどのようなコーディングであれば可能でしょうか?
それぞれのページに設定する内容など具体的に教えてもらえますと大変助かります。
4.の画面に切り替わったと同時にサーバーにデータが転送されるようにしたいと思っています。

で、話は反れるのですが、このサーバーがチェックボックス式の買い物ができなくいろいろ制限があるためにこのようなことを考えています。
もしレンタルサーバーでスクリプトを組むなどの手間が省けるようなところがありましたら教えてください。簡単な買い物システムなのでできれば安く上げたいと思っています。

Aベストアンサー

JavaScript+DOMを使ってみてはいかがでしょうか。
ただし、
> それはどのようなコーディングであれば可能でしょうか?
たぶん、本が一冊書けるほどの量になると思うので、ここでは書けません。
「JavaScript DOM」や「Ajax」などをキーワードに調べてください。

DOMを使えばページの一部や全部を書き換えることが出来るので、
ページの移動をしなくても、それぞれのページに移動しているように見せかけることが出来ます。

Ajaxと組み合わせて使われる技術ですが、ページ読み込み時に商品データなどをあらかじめ取得しておけば、
以後、サーバーとの通信は行わなくてもすみますから、Ajaxは使わずにDOMだけで実現できます。
データを全部読み込まないと行けないので、一番始めに表示するまでに、時間がかかりますけどね。
もともとの商品数が数ページ分しかないようなら、読み込みもそれほど時間はかからないと思います。

> もしレンタルサーバーでスクリプトを組むなどの手間が省けるようなところがありましたら教えてください。
lolipopさんの併設サービス(提携サービス?)で、買い物システムを安く利用できます。
レンタルで良いならググればたくさん出てくると思いますけどね。
自分で作る必要もありませんし、その方がおすすめです。

JavaScriptだけの買い物かごシステムはないと思います。
CGIからHTMLを出力した方が、はるかに簡単に作れますから。

JavaScript+DOMを使ってみてはいかがでしょうか。
ただし、
> それはどのようなコーディングであれば可能でしょうか?
たぶん、本が一冊書けるほどの量になると思うので、ここでは書けません。
「JavaScript DOM」や「Ajax」などをキーワードに調べてください。

DOMを使えばページの一部や全部を書き換えることが出来るので、
ページの移動をしなくても、それぞれのページに移動しているように見せかけることが出来ます。

Ajaxと組み合わせて使われる技術ですが、ページ読み込み時に商品データなどをあ...続きを読む

Q前のページに戻るとページトップに戻るの併用方法

ホームページのページ内に前のページに戻るボタンとページトップ(同ページの最上部)に戻るボタンの両方をJavaScriptで設置したいのですが、方法がわかりません。

前のページに戻るは
<a href="javascript:history.back()">戻る</a>
としています。

ページトップ(同ページの最上部)に戻るは
<a href="javascript:scrollTo(0,0);undefined;" onclick="return false;">ページトップに戻る</a>
としています。

以上の両方を併用する方法を教えていただけないでしょうか?
よろしくお願いします。

Aベストアンサー

アンカーを利用したページ内の移動で履歴を残したくないってことですよね。
javascriptで移動処理をしてやるしかないのでは。

//ここから
function cancel(e) {
if (window.event) {
event.cancelBubble = true;
event.returnValue = false;
} else if (e && e.preventDefault && e.stopPropagation) {
e.preventDefault();
e.stopPropagation();
}
return false;
}

function fragmentAnchor(e) {
var h, targetElm, every, p, n;
var elm = e.target || e.srcElement;
if (elm.tagName != 'A') return;
if ((p = (h = elm.href).lastIndexOf('#')) <= 0) return;
h = h.substring(p + 1, h.length);
if ((targetElm = document.getElementById(h)))
scrollTo(0, targetElm.offsetTop);
else {
every = document.body.getElementsByTagName('*');
n = every.length;
for (var i = 0; i < n; i++) {
if (every[i].name == h) {
scrollTo(0, every[i].offsetTop);
every = null;
break;
}
}
if (every != null) return;
}
return cancel(e);
}

function backToTop(e) {
var elm = e.target || e.srcElement;
if (elm.className != 'back' && elm.className != 'top') return;
if (elm.className == 'back') history.back();
else scrollTo(0, 0);
return cancel(e);
}

if (document.addEventListener) {
document.addEventListener('click', backToTop, true);
document.addEventListener('click', fragmentAnchor, false);
}
else {
document.attachEvent('onclick', backToTop);
document.attachEvent('onclick', fragmentAnchor);
}
//ここまで

ページ内の移動で履歴を残さなくなるはずです。たぶん。

<p><a href="#" class="top">ページトップに戻る</a></p>
<p><a href="before.html" class="back">戻る</a></p>

こちらは履歴がないとただのお飾りになってしまいますが、割り切ってしまえるなら。

アンカーを利用したページ内の移動で履歴を残したくないってことですよね。
javascriptで移動処理をしてやるしかないのでは。

//ここから
function cancel(e) {
if (window.event) {
event.cancelBubble = true;
event.returnValue = false;
} else if (e && e.preventDefault && e.stopPropagation) {
e.preventDefault();
e.stopPropagation();
}
return false;
}

function fragmentAnchor(e) {
var h, targetElm, every, p, n;
var elm = e.target || e.srcEle...続きを読む

QshowModalDialogの子画面での画面遷移

お世話になっています。
mike219といいます。

現在Webシステムの開発をStrutsで行っております。
そこで、一つ悩みにぶつかったので質問させていただきました。

行いたいことは、下記のような動きです。
(1)JavaScriptでshowModalDialogを使って子画面を開きます。
(2)showModalDialogで開かれた画面にいろいろ書き込みます。
(3)開かれている子画面内にあるボタンをクリックして
 子画面内での画面遷移を行います。

といった感じです。

現在(3)で問題があり、ボタンをクリックした後、
新規でブラウザが立ち上がり遷移先の画面が表示されてしまっています^ ^;

なにか子画面で遷移先の設定をしないといけないと
思うのですが、JavaScriptの知識が浅いため良く分かっていないです。

どなたか助けていただけませんか?

Aベストアンサー

<base target="_self">
をつけてみてください。

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=48114&forum=7

Qチェックボックスの値を引き渡し、戻して結果に準じて違うページに飛ばしたい

チェックボックスで選択された結果によってそれぞれ別ページに飛ばしたい
と思っております。色々とググッてみたのですがどうしてもできません。
お力をおかしいただけないでしょうか?

<実現したいこと>

●チェックボックスに選択されたパターンにより、それぞれ別ページに飛ばしたい。
各商品には、商品IDがあります。

リンゴの商品番号は、001
みかんの商品番号は、002
メロンの商品番号は、003
ももの商品番号は、004
パイナップルの商品番号は、005


●カートに入れるを押した際に飛ばすページは、http://www.example.com/cart/1234567&shouhinID=選択された商品番号

※複数選択された場合は、そのまま選択された商品番号が足されていく。


●チェックをせずにカートに入れるボタンを押した場合は、選択されていません。
とアラートがページに書き出されるかポップアップが上がる。


<ホームページの画面>

※四角がチェックボックスです。

□りんご
□みかん
□メロン
□もも
□パイナップル

カートに入れるボタン


例えばリンゴとメロンが選択された場合、
カートに入れるボタンの遷移先URLは、
http://www.example.com/cart/1234567&shouhinID=001003


ということを実現したいと思っています。

あれこれ試行錯誤してこんな感じかなと思ったものがありますので
検討違いかもしれませんが書いておきます。


html


<form name="shouhin_seisei" id="shouhin_seisei" method="post" action="">

<INPUT TYPE="checkbox" NAME="shouhin" VALUE="1">
<INPUT TYPE="hidden" NAME="shouhinID" VALUE="001">りんご

<INPUT TYPE="checkbox" NAME="shouhin" VALUE="1">
<INPUT TYPE="hidden" NAME="shouhinID" VALUE="002">みかん

<INPUT TYPE="checkbox" NAME="shouhin" VALUE="1">
<INPUT TYPE="hidden" NAME="shouhinID" VALUE="003">メロン

<INPUT TYPE="checkbox" NAME="shouhin" VALUE="1">
<INPUT TYPE="hidden" NAME="shouhinID" VALUE="004">もも

<INPUT TYPE="checkbox" NAME="shouhin" VALUE="1">
<INPUT TYPE="hidden" NAME="shouhinID" VALUE="005">パイナップル

<p><a onClick="linkToshouhin('seiseiurl'); return false;" target="_blank">
<img src="カートに入れるボタン.jpg" width="511" height="78" /></a></p>
</form>


javascript



// 決済URLの動的リンク処理


function linkToshouhin(type)

{
var hidden_form;

var shouhinID;

var link_url;


hidden_form = document.getElementById("shouhin_seisei");


if(!hidden_form)
{

return;

}

ここからそれぞれの処理をしたいのですが分かりません。
最後に以下を追加しています。


link_url = 'http://www.example.com/cart/1234567&shouhinID='shouhinID;
hidden_form.action = link_url;
hidden_form.submit();

}



以上になります。
htmlで<p><a onClick="linkToshouhin('seiseiurl'); return false;" target="_blank">
と書いていますが、こうするとseiseiurlは文字列で渡してしまっていることになりますよね。
めちゃくちゃなことを書いているとは思いますが、どうかお力をお貸しください。

チェックボックスで選択された結果によってそれぞれ別ページに飛ばしたい
と思っております。色々とググッてみたのですがどうしてもできません。
お力をおかしいただけないでしょうか?

<実現したいこと>

●チェックボックスに選択されたパターンにより、それぞれ別ページに飛ばしたい。
各商品には、商品IDがあります。

リンゴの商品番号は、001
みかんの商品番号は、002
メロンの商品番号は、003
ももの商品番号は、004
パイナップルの商品番号は、005


●カートに入れるを押した際に飛ば...続きを読む

Aベストアンサー

フォームの内容をPOSTしたいのではなく、単に選択内容に応じたURLへと移動すればよいのですよね?それであれば、もっとシンプルにできそうです。こんな感じでどうでしょう?

下記の例では実際に移動はせず、移動先のURLを表示するようにしてあります。その行を削除して、その下の行のコメントアウトを外せば実際に移動するようになります。

---
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

<head>
<title>test</title>
<script type="text/javascript">
window.onload = function(){
document.getElementById('shouhin_seisei_button').onclick = function(){
var baseURL = 'http://www.example.com/cart/1234567&shouhinID=',
selected = '',
inputs = document.getElementById('shouhin_seisei').getElementsByTagName('input');
for (var i = 0, n = inputs.length; i < n; i++) {
if (inputs[i].checked) {
selected += inputs[i].value;
}
}
if (selected.length) {
alert(baseURL + selected);
//window.location.href = baseURL + selected;
} else {
alert('選択されていません。');
}
}
};
</script>
<style type="text/css">
ul { list-style-type: none; }
</style>
</head>

<body>
<form id="shouhin_seisei" action="#">
<ul>
<li><label><input type="checkbox" name="shouhin" value="001" />りんご</label></li>
<li><label><input type="checkbox" name="shouhin" value="002" />みかん</label></li>
<li><label><input type="checkbox" name="shouhin" value="003" />メロン</label></li>
<li><label><input type="checkbox" name="shouhin" value="004" />もも</label></li>
<li><label><input type="checkbox" name="shouhin" value="005" />パイナップル</label></li>
<li><input id="shouhin_seisei_button" type="button" value="送信" /></li>
</ul>
</form>
</body>

</html>

フォームの内容をPOSTしたいのではなく、単に選択内容に応じたURLへと移動すればよいのですよね?それであれば、もっとシンプルにできそうです。こんな感じでどうでしょう?

下記の例では実際に移動はせず、移動先のURLを表示するようにしてあります。その行を削除して、その下の行のコメントアウトを外せば実際に移動するようになります。

---
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xml...続きを読む


人気Q&Aランキング

おすすめ情報