0

国の選択メニューがあります (このサーバー側は変更できません)。以前のユーザーの選択に基づいて、そのオプションの 1 つが既に選択されています。

また、メニューに表示する国を指定する国コード (これもサーバー側で生成されます) のリストもあります。(ほとんどは削除する必要があります。)

次のスクリプトを思いついたのですが、なぜ機能しないのかわかりません。不要な国を無効にすることができます

  countrymenu.options[i].disabled = true;

しかし

  countrymenu.remove[i];

(これが私が必要とするものです)何もしません。

どんな助けでも大歓迎です。

<html>
    <head>
        <script type="text/javascript">
            function HideCountries()
            {
                countrymenu = document.checkoutform.country_code;

                for (var i = 0; i < countrymenu.length; i++)
                { 
                    if (/^ASM|AIA$/.test(countrymenu.options[i].value)==false) 
                    {
                        countrymenu.remove[i];
                    }
                }
            }

            window.onload=HideCountries;
        </script>
    </head>
    <body>
        <form name="checkoutform">
            <select name="country_code"  id="country_code">
                <option value="AFG">Afghanistan</option>
                <option value="ALA">&Aring;land Is.</option>
                <option value="ALB">Albania</option>
                <option value="DZA">Algeria</option>
                <option value="ASM">American Samoa</option>
                <option value="AND">Andorra</option>
                <option value="AGO">Angola</option>
                <option value="AIA">Anguilla</option>
                <option value="ATA" selected="selected">Antarctica</option>
            </select>       
            <input type="submit" />
        </form>
    </body>
</html>
4

2 に答える 2

0

remove関数です。通常の括弧で呼び出されます。

countrymenu.remove(i);

remove[i]関数を配列として使用しようとします。これは失敗するので、何も起こりません。また、コードを停止するエラーが発生する可能性があります。

于 2013-11-15T11:11:26.140 に答える