使用 select 选项禁用文本框

Disable a textbox with a select option

我有一个带有 select 和文本框的页面。如果选项 selected 与 "Altro" 不同,我想保持禁用文本框。我能怎么做?我试过我的文本框总是被禁用。

HTML:

<p>Partenza:    <select id="selPartenza">
                    <option class="opt" value="0">Altro</option>
                    <option class="opt" value="1">Opt1</option>
                    <option class="opt" value="2">Opt2</option>
                </select>
                </p>                

                <textarea id="textP" placeholder="Aggiungi qui l'indirizzo di partenza se non lo trovi mell'elenco precedente."></textarea>

Javascript:

$("#selPartenza").each(function(i){
    $(this).click(function () {
        if(i==0) { //1st option
            $("#textP").attr("disabled", "disabled");                              
        } else {
            $("#textP").removeAttr("disabled");          
        }
    });
});

显然我无法 select 我的脚本中的选项。我能怎么做? 谢谢你的回答。

您需要使用 $('#selPartenza').on('change'prop('disabled', true)

$('#selPartenza').on('change', function(){
  if(this.value == 0)
    $('#textP').prop('disabled', true)
  else
    $('#textP').prop('disabled', false)
})

$('#selPartenza').change()
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Partenza:    <select id="selPartenza">
                    <option class="opt" value="0">Altro</option>
                    <option class="opt" value="1">Opt1</option>
                    <option class="opt" value="2">Opt2</option>
                </select>
                </p>                

                <textarea id="textP" placeholder="Aggiungi qui l'indirizzo di partenza se non lo trovi mell'elenco precedente."></textarea>