WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:ネットスケープでは動かない!

0:[投稿] koba [MAIL] [2002/06/04 07:21 ][環境:WIN+IE わからない]

javascriptで連想配列を使って一つ目のセレクトを選択したら二つ目のメニューが自動に代わるようにしました。しかしエクスプローラー6.0では動きますがネットスケープ4.75では動きません。
"brand[index] has no properties. "とエラーがでます。

いったいどこを直せば両方のブラウザーで使えるようになるでしょうか?
どなたかご教示ください。
******** スクリプト **************
<FORM NAME="form1" ACTION="../cgi-bin/maison.cgi" METHOD="POST" TARGET="main">
<SCRIPT LANGUAGE = JavaScript>
<!--
    var naviName = navigator.appName;
    var naviVer = parseInt(navigator.appVersion);
    var naviPlatform = navigator.platform;
    var brand = new Array();
    brand[0] = new Array(//最初のメニュー
                'アイテムを選択','',
                '','',
                '--- スキンケア ---','',
                '','',
                'アイケア','アイケア',
                'アンチエイジング','アンチエイジング',
                'エマルジョン','エマルジョン',
                '体力増強','体力増強'
            );
    brand["アナスイ"] = new Array(//アナスイ
                'アイテムを選択','',
                'オードトワレ','EDT SP'
            );
    brand["アベンヌ"] = new Array(//アベンヌ
                'アイテムを選択','',
                'アイケア','アイケア',
                'クリーム','クリーム',
                'クレンジング','クレンジング',
                '化粧液','化粧液',
                '洗顔','洗顔',
                '乳液','乳液',
                '保湿クリーム','保湿クリーム',
                '保湿用マスク','保湿用マスク'
            );

    function brand_change()
    {    
        select_brand()
        document.form1.key_word3.selectedIndex = 0;
    }

    function select_brand()
    {    
        var index;
        var num;
        var no;
        index = document.form1.key_word2.value;
        num = brand[index].length / 2;
        no = 0;

        document.form1.key_word3.length = 0;

        for (i = 0;i < num;i++){
            eval("document.form1.key_word3.options[i] = new Option('"+ brand[index][no++] + "', brand[index][no++])");
                
        }
        document.form1.key_word3.selectedIndex = 0;
        if (naviName == 'Netscape' && ( naviVer < 4
                                    || naviPlatform == 'Win32'
                                    || naviPlatform == 'Win16')) {
            window.resizeBy(0,0);
        }
    }
// -->
</SCRIPT>
<SELECT NAME='key_word2' onChange='brand_change()'>
 <OPTION VALUE='0'>ブランドを選択
 <OPTION VALUE='アナスイ'>アナスイ
 <OPTION VALUE='アベンヌ'>アベンヌ
</SELECT>
<SELECT NAME='key_word3'>
<option value="">--アイテムを選択--</option>
<option value=""></option>
<option value="">--- スキンケア ---</option>
<option value=""></option>
<option value="アイケア">アイケア</option>
<option value="アンチエイジング">アンチエイジング</option>
<option value="エマルジョン">エマルジョン</option>
<option value="体力増強">体力増強</option>
</SELECT>
<INPUT TYPE="hidden" NAME="mode" VALUE="search">
<INPUT TYPE="hidden" NAME="count" VALUE="1">
<INPUT TYPE="submit" VALUE="検索" STYLE="font-size:12px">
</FORM>
********************************

お願いいたします。


1:[回答] ナン [2002/06/04 11:10 ]

関数select_brand()の
index = document.form1.key_word2.value;

index = document.form1.key_word2.options[document.form1.key_word2.selectedIndex].value;
でどう?


2:[回答] KOBA [2002/06/05 05:16 ]

(^。^)
ありがとうございます。
自分で半日かけても駄目だったのがうそのようです。
ナン様本当にありがとうございます。


回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World