dポイントプレゼントキャンペーン実施中!

下記の条件を満たす確認ダイアログの出し方を教えて下さい。

・フォームのボタンではなくリンクテキストで実行
・リンククリックでダイアログ表示、OK選択でリンク先に移動、キャンセル選択で移動なし(元のページを表示したまま)
・1つのページに複数記設置出来る(移動先は、それぞれ別)

A 回答 (3件)

#1です。


済みません、うまく動かないみたいですね。
当方XP+IE6では、うまく動くのですが…
return false;については、最初かいていたのですが、なくても動くようだったので止めてしまいました。
でも、間違いだったようです。
MacのIEの動作はWinのIEと動作が異なるようですが、
以下を試して貰えませんか
<A href="test1.html" onclick="stepJump(this);return false;">リンク1</A><br>
<A href="test2.html" onclick="stepJump(this);return false;">リンク2</A><br>
<A href="test3.html" onclick="stepJump(this);return false;">リンク3</A><br>
に変更する
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
試してみた所、理想通りの動作になりました。
有り難うございました。

お礼日時:2004/12/14 23:55

私も書くのをよく忘れますが、jumpさせたくないときはreturn falseでリンクの動作を抑止します。



> onmousedown="stepJump(this)"
→ onmousedown="stepJump(this);return false;"

または、function stepJump()の方でfalseを返して
→ onmousedown="return stepJump(this)"

この回答への補足

回答ありがとうございます。

下記の記述で良いんですよね?

<script type="text/javascript">
<!--
function stepJump(a){
if(confirm("ホントにリンク先に移動しますか?")){
location.href=a.href;
}
}
//-->
</script>
<a href="test1.html" onMouseDown="stepJump(this);return false;">リンク1</a><br>
<a href="test2.html" onMouseDown="stepJump(this);return false;">リンク2</a><br>
<a href="test3.html" onMouseDown="stepJump(this);return false;">リンク3</a><br>

当方の勘違いでしたら申し訳ないのですが、
リンク1をクリック→OKでtest1.htmlにジャンプ→ブラウザの戻る→リンク2(リンク1/リンク3)をクリック→キャンセルを選択→test2.html(それぞれのリンク先)にジャンプしてしまいます。仕様なのでしょうか?

補足日時:2004/12/14 19:20
    • good
    • 0

<script type="text/javascript">


<!--
function stepJump(a){
if(confirm("ホントにリンク先に移動しますか?")){
location.href=a.href;
}
}
//-->
</script>
<A href="test1.html" onmousedown="stepJump(this)">リンク1</A><br>
<A href="test2.html" onmousedown="stepJump(this)">リンク2</A><br>
<A href="test3.html" onmousedown="stepJump(this)">リンク3</A><br>
って感じで

この回答への補足

回答ありがとうございます。

試してみたのですが、キャンセルを選択してもリンク先にジャンプしてしまいます。
環境はMacintosh9.2+IE5.2になります。

補足日時:2004/12/14 10:57
    • good
    • 0

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