Ответ 1
Это значение true, если оно уже существует:
$("#yourSelect option[value='yourValue']").length > 0;
Как проверить, существует ли опция в JQuery для выбора?
Я хочу динамически добавлять опции в select и поэтому мне нужно проверить, существует ли опция для предотвращения дублирования.
Это значение true, если оно уже существует:
$("#yourSelect option[value='yourValue']").length > 0;
if ( $("#your_select_id option[value=<enter_value_here>]").length == 0 ){
alert("option doesn't exist!");
}
Другой способ использования jQuery:
var exists = false;
$('#yourSelect option').each(function(){
if (this.value == yourValue) {
exists = true;
}
});
var exists = $("#yourSelect option")
.filter(function (i, o) { return o.value === yourValue; })
.length > 0;
Это имеет то преимущество, что вы автоматически избегаете значения для вас, что делает случайные кавычки в тексте гораздо более легкими.
Не работает, вы должны это сделать:
if ( $("#your_select_id option[value='enter_value_here']").length == 0 ){
alert("option doesn't exist!");
}
Это помогает мне:
var key = 'Hallo';
if ( $("#chosen_b option[value='"+key+"']").length == 0 ){
alert("option not exist!");
$('#chosen_b').append("<option value='"+key+"'>"+key+"</option>");
$('#chosen_b').val(key);
$('#chosen_b').trigger("chosen:updated");
}
});