2016-04-11 8 views
0

同じオプションと値の2つのコンボボックスがあります。したがって、ユーザーが最初のコンボボックスでpythonを選択した場合、2番目のコンボボックスのpythonオプションは無効になります。しかし、私がこれを試してみるとうまくいかないでしょう。ここに私のコードは次のとおりです。他の<select>オプションに基づいて<select>オプションを無効にするにはどうすればよいですか?

HTML:

<select name="first_combobox"> 
    <option value="python">Python</option> 
    <option value="ruby">Ruby</option> 
    <option value="lua">Lua</option> 
</select> 

<select name="second_combobox"> 
    <option value="python">Python</option> 
    <option value="ruby">Ruby</option> 
    <option value="lua">Lua</option> 
</select> 

JS(jQueryの):

$("select[name=first_combobox]").change(function(){ 
    if ($("select[name=first_combobox]").val() === $("select[name=second_combobox]").val()) { 
     $("select[name=second_combobox] option[value=" + $("select[name=first_combobox]").val() + "]").attr("disabled", "disabled"); 
    } else { 
     $("select[name=second_combobox] option[value=" + $("select[name=first_combobox]").val() + "]").removeAttr("disabled"); 
    } 
}); 

誰かが私はこの問題を解決するのに役立つことはできますか?これはあなたのために働く必要があります

答えて

1

前にありがとう:

$("select[name=first_combobox]").change(function(){ 
    $("select[name=second_combobox] option").removeAttr("disabled"); 
    $("select[name=second_combobox] option[value=" + $("select[name=first_combobox]").val() + "]").attr("disabled", "disabled"); 
}); 

Fiddle

+0

ああ!今私のためにうまくいく! 'removeAttr'で' [value =] 'を削除しました。ありがとう! – imbagila

0

これは正確に行う必要必要必要があります。それが役に立てば幸い!

$(document).ready(function(){ 
 
\t \t $("#theSelect").change(function(){ 
 
\t \t \t $("select[name=second_combobox] option").removeAttr("disabled"); 
 
\t \t \t $("select[name=second_combobox] option[value=" + $("select[name=first_combobox]").val() + "]").attr("disabled", "disabled"); 
 
\t \t }); 
 
\t });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 
 
<select id = "theSelect" name="first_combobox"> 
 
\t <option value="python">Python</option> 
 
\t <option value="ruby">Ruby</option> 
 
\t <option value="lua">Lua</option> 
 
</select> 
 

 
<select id="theSelect" name="second_combobox"> 
 
\t <option value="python">Python</option> 
 
\t <option value="ruby">Ruby</option> 
 
\t <option value="lua">Lua</option> 
 
</select>

関連する問題