Если опция выбрана в одном множественном выборе, отключите его в другом раскрывающемся списке
Что не так с этим кодом? У меня есть множественный выбор (VendorIDs) и выбор (vendorDropDown). Я хочу, чтобы все выбранные элементы в VendorIDs были отключены в vendorDropDown. Это не работает:
$('#Vendor_IDs :selected').each(function (i, selected) {
var v = $(selected).val();
$("#vendorDropDown option[value='" + v + "']").attr("disabled", true);
});
Но это делает:
$('#Vendor_IDs :selected').each(function (i, selected) {
var v = $(selected).val();
alert(v);
$("#vendorDropDown option[value='" + v + "']").attr("disabled", true);
});
Как добавление оповещения что-то меняет?
1 ответ
Решение
Это выглядит как var v = $(selected).val();
выполняется слишком долго, чтобы следующая строка была вовремя. Попробуй это:
$('#Vendor_IDs :selected').each(function (i, selected) {
$("#vendorDropDown option[value='" + $(selected).val() + "']").attr("disabled", true);
});
Таким образом, вторая строка не зависит от первой строки, выполнение которой заняло слишком много времени. Дайте мне знать, если это работает.
2-я попытка!-
$('#Vendor_IDs :selected').each(function() {
$("#vendorDropDown option[value='" + $(this).val() + "']").attr("disabled", true);
});