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

2つのプルダウンメニューを連動させて、
ひとつ目のプルダウンメニュー内の条件にそれぞれ連動させた選択肢をふたつ目のプルダウンメニューで表示させ、
ふたつのプルダウンで選んだ項目に連動したリンク先へジャンプさせたいと考えております。
下記のソースで試した所、IE6ではOKでしたがFireFox、Safariでは
ダメでした。(プルダウンじたいが表示されない)
IE6と7、FireFox2と3、MacのSafari3で表示できるようにしたいので教えてください。
ちなみに私はHTMLレベルのスキルしかありませんのでできるだけ具体的に教えて頂けると助かります。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>テスト</title>
</head>
<body>

↓ここにプルダウンが入る<br>
<script type="text/javascript">
var printf = document.write;
RightListStr = ["選択してください","条件A","条件B"];
LeftListStr = [["選択してください","",""],["選択してください","条件A-1","条件A-2"],["選択してください","条件B-1","条件B-2"]];
URL = [["","",""],["","http://条件A-1リンク先.com","http://条件A-2リンク先.jp"],["","http://条件B-1リンク先.com","http://条件B-1リンク先.jp"]];
printf('<form name="MyForm"><select name="RightList" onChange="ChangeList(this);">');
for(var i = 0; i < RightListStr.length; i++) printf('<option>' + RightListStr[i]);
printf('</select> <select name="LeftList" onChange="MoveURL(this)">');
for(var i = 0; i < LeftListStr[0].length; i++) printf('<option>' + LeftListStr[0][i]);
pritnf('</select></form>');
function MoveURL(LeftObject){
var RightObject = document.MyForm.RightList
location.href = URL[RightObject.selectedIndex][LeftObject.selectedIndex];
return;
} function ChangeList(RightObject) {
var LeftObject = document.MyForm.LeftList;
for(var i = 0; i < LeftListStr[RightObject.selectedIndex].length; i++) LeftObject.options[i].text = LeftListStr[RightObject.selectedIndex][i];
return;
}
</script>

</body>
</html>

A 回答 (1件)

全般的に書き方が古いですね・・・


汎用性をだすならDOMで書きなおした方がよいかもしれません

この回答への補足

ありがとうございます。
ほかのいくつかのソースをネットでみつけて組み合わせで解決できました。

補足日時:2008/07/22 19:18
    • good
    • 0
この回答へのお礼

すみません、DOMとかよくわかりません。
ネット上で拾った物をコピペして使いました。
もしよろしければ教えてもらえますでしょうか?

お礼日時:2008/07/21 18:17

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