Проверьте, есть ли значение в выпадающем списке и отключите его в Jquery
Как я могу проверить, есть ли элемент в выпадающем списке выбора и отключить его, если он удовлетворяет некоторому условию?
Заранее спасибо!
Кстати, я попробовал следующее, и ничего не происходит
$('#select-box option').each(function()
{if (this.val() == item)
{$('#select-box option').attr("disabled","disabled");}});
Отредактировано*
Второй код, который я использовал при отладке. Это прошло гладко, пока я не сделал сравнение с пунктом. Мне интересно, если это из-за этой стоимости. Если так, как я могу преодолеть это?
function checkSelectBox(item){ <!--alert(item);-->
$('#SCOPE option').each(function()
{
if($(this).val()==item)
{ alert('Camein')
$(this).attr("disabled", "disabled");
return false;
}
});
}
2 ответа
Решение
Ты имеешь ввиду:
$('#yourSelectId option').each(function(){
if ($(this).val() == 'some_value_to_check') {
$(this).attr("disabled", "disabled");
return false;
}
});
Эй, это работает пример: http://jsfiddle.net/R6GAr/11/
HTML: образец
<SELECT NAME="SCOPE" id="SCOPE">
<OPTION VALUE="G"> Global
<OPTION VALUE="D" selected="selected"> Dynamic
</SELECT>
JQuery: образец
$('#SCOPE').change(function(){
if($(this).val() == 'G') {
// **disables the option here with attr as below**
$('#SCOPE option[value="'+$(this).val()+'"]').attr("disabled","disabled");
// **Now you want that disable to be not selectable as well, this line does that.**
$('#SCOPE option[value="'+$(this).val()+'"]').attr("selected",false);
}
});
Надеюсь, это поможет, ура!