желаемый результат:
- 4 выпадающих списка, в каждом из которых 6 одинаковых вариантов выбора.
- Когда опция выбрана, она отключается в 3 других выпадающих списках.
- Кроме того, когда параметр изменяется, он становится доступным в 3 других раскрывающихся списках выбора.
- Этот же шаблон должен работать на всех 4 выборках.
HTML:
<td class="formLabelHolder"><label for="field1174">Label</label></td>
<td class="formFieldHolder"><span><select name="field1" class="formSelect" id="field1">
<option selected="selected"></option>
<option>Large Format Solutions</option>
<option>Advanced Large Format Solutions</option>
<option>Scanning Solutions</option>
<option>Advanced Scanning Solutions</option>
<option>Office Imaging</option>
<option>Projectors Solutions</option>
</select>
</span></td>
Я пытаюсь решить эту проблему с помощью jQuery, а вот код:
$(document).ready(function(){
var select = $('#form-221 select :selected');
$('#form-221 select').change(function() {
var value = $(this).val();
var index = $('#form-221 select').index(this);
$('#form-221 select option').each(function() {
// $(this).removeAttr('disabled');
if ( $(this).val() == value ) {
$(this).attr('disabled', true);
}
if ( $(this).val() == select[index] ) {
$(this).attr('disabled', false);
}
});
// console.log($(':selected', select.parent('select')[index]).val());
select = $('#form-221 select :selected');
});
});
Я тоже пробовал это:
$(document).ready(function(){
$('#form-221 select').change(function() {
var value = $(this).val();
$('#form-221 select option').each(function() {
$(this).removeAttr('disabled');
if ( $(this).val() == value ) {
$(this).attr('disabled', true);
}
});
});
});
Но это приводит только к последнему измененному выбору.
Верхний код работает (если вы убираете первое «если») на полпути, он полностью отключает выбор, но при изменении выбора не активирует его.
Я, должно быть, делаю что-то не так, и я пытаюсь понять это, пока мы говорим;) Если я найду ответ, я вставлю это и здесь:)
Если у кого-то есть другой способ приблизиться к этому, пожалуйста, дайте мне знать! Я стремлюсь найти ответ / решение:)
Я нашел другой вопрос о чем-то подобном, но он работает только для 2 выборов, я попытался;)