У меня есть 3 блока select2, и страница требует, чтобы остальные два были отключены при использовании. У меня есть следующий код, однако он не работает. При загрузке страницы все Select2 исчезают (они установлены как скрытые входы в HTML):jQuery не работает с инструкциями спрятать select2
$("#collection-search").change(function(){
if($(this).val())
$("#subject-search").select2("enable", false);
$("#special-search").select2("enable", false);
else
$("#subject-search").select2("enable", true);
$("#special-search").select2("enable", true);
});
$("#subject-search").change(function(){
if($(this).val())
$("#collection-search").select2("enable", false);
$("special-search").select2("enable", false);
else
$("#collection-search").select2("enable", true);
$("special-search").select2("enable", true);
});
$("#special-search").change(function(){
if($(this).val())
$("#collection-search").select2("enable", false);
$("#subject-search").select2("enable", false);
else
$("#collection-search").select2("enable", true);
$("#subject-search").select2("enable", true);
});
Любые идеи, почему это происходит? Я просматриваю FireBUG, но ничего полезного не появляется. Единственное, что я вижу, это синтаксическая ошибка в выражении «else» в jquery.min.js.
Если ваши условные операторы имеют более одной строки, используйте скобки или она сломается. –
Нравится: 'if ($ (this) .val()) { $ (" # subject-search "). Select2 (" enable ", false); $ ("# special-search"). Select2 ("enable", false);} '? – TuxMeister
Да, в противном случае утверждение не имеет понятия, где положить конец –