プロが教える店舗&オフィスのセキュリティ対策術

質問内容に不備があったため再度質問させて頂きます。
前回答えて下さった方には大変ご迷惑をおかけします。

非常に多くのものを奇麗に見せたいのでプルダウンメニューがいいと思い、作りました。
・Aリスト、Bリスト、Cリスト…とプルダウンメニュー(メニューを選ぶとアンカー先に飛ぶようにしたい)を複数含んだフォームを一つのhtmlに作ったのですが、動作しません。
一つのフォームに一つのプルダウンメニューは上手くいくのですが、Javascriptを二つ並べると動かなくなります。
とりあえず関数名を重複しない様にしたらいいという事だけはネットで調べてわかりました。
今は、下記の状態になっています。

list.html

<script language="JavaScript">
<!--
function MENU(){
mySelect = document.myForm.myMenu.selectedIndex;
location.href = document.myForm.myMenu.options[mySelect].value;
}
// -->
</script>

<form name="myForm">

<select name="myMenu" onChange="MENU()">
<option value="">A</option>
<option value="list.html#a001">A001</option>
<option value="list.html#a002">A002</option>
<option value="list.html#a003">A003</option>
</select>

<select name="myMenu2" onChange="MENU()">
<option value="">B</option>
<option value="list.html#b001">A001</option>
<option value="list.html#b002">A002</option>
<option value="list.html#b003">A003</option>
</select>
</form>

<a id="a001" name="a001"></a>A001<br>
<a id="a001" name="a002"></a>A002<br>
<a id="a001" name="a003"></a>A003<br>

<a id="a001" name="b001"></a>B001<br>
<a id="a001" name="b002"></a>B002<br>
<a id="a001" name="b003"></a>B003<br>


あと、このように同じhtml内でのリンクになる場合は、optionのvalueのlist.htmlを省いてもいいのでしょうか?
当方、Javascriptに関してはコピペでしか使えない程度の知識の人間です。
ご指南の程宜しくお願いします。

A 回答 (1件)

関数を以下に変更


function MENU(url){
if( url != "" ) document.location.href = url;
// valueが""のときリンクエラーを回避
}

それと<select>タグを
<select name="myMenu" onChange="MENU(this.options[this.selectedIndex].value);">
のようにしてください。

> あと、このように同じhtml内でのリンクになる場合は、optionのvalueのlist.htmlを省いてもいいのでしょうか?

IE6ですが省いても動作を確認。大丈夫かと。

ちなみに前回の質問を締め切ってください。
    • good
    • 0
この回答へのお礼

ありがとうございます!無事出来ました!
以前の回答そのまま出よかったんですね…当方が無知なため大変ご迷惑をおかけしました。
またvalueの文字を省いても大丈夫という事も教えて頂き大変感謝しております。
重ねて本当にありがとうございました!

お礼日時:2007/03/15 21:18

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