0

最初の選択ボックスが変更されたときに、2 番目の選択ボックスを無効にするスタイルを変更したいのですが、できません。私を助けてください。

<html>
    <body>
        <select onchange="a()" id="1">
            <option>Choose</option>
            <option>1</option>
            <option>2</option>
        </select>
        <select id="2" disabled="true">
            <option>one</option>
            <option>two</option>
        </select>
        <script>
            function a(){
                if(document.getElementById('1').value!="Choose"){
                    document.getElementById('2').style.background="yellow";
                    document.getElementById('2').style.disabled="false";
                }
            }
        </script>
   </body>
</html>
4

3 に答える 3

3

disabled要素のプロパティであり、そのスタイル コレクションではありません。

document.getElementById('2').disabled = false;

と はHTML5 より古い HTML では有効な ID ではないことに注意することも重要です。つまり、古いブラウザでは重大な問題が発生する可能性があります (ID として認識されない、 で見つから1ない、スタイル設定されないなど)。意味のある ID を指定することをお勧めします。たとえそれが単にとであっても、ID が誤って重複する可能性を減らすのに役立ちます。2getElementByIdselect1select2

于 2013-10-25T12:52:42.327 に答える
0

「無効」の部分は CSS プロパティではなく、select 要素の属性です。

代わりにこれを試してください:

document.getElementById('2').disabled=false;
于 2013-10-25T12:52:32.993 に答える
0

disabledスタイル プロパティではなく、属性です。それはすべきです:

function a(){
    if(document.getElementById('1').value!="Choose"){
        document.getElementById('2').style.background = "yellow";
        document.getElementById('2').disabled = false;
    }
}
于 2013-10-25T12:52:44.927 に答える