Выберите опцию Скрытый, если выбран другой выбор в массиве

Например

если id="select[1]" выбранный value=1

id 2-5 не могу выбрать value=1

<?php for($i= 0;$i<5;$i++){ ?>
<select id="select[]" name="select[]">
<option hidden selected>Please Select</option>
<option value="1">Test 1</option>
<option value="2">Test 2</option>
<option value="3">Test 3</option>
</select>
<?php } ?>

-2

Решение

Чтобы избежать необходимости поддерживать состояния каждого выбора или чего-то подобного, мой подход заключается в том, чтобы перечитать и отключить соответствующие параметры при изменении выбора

$('select').change(function() {

// First we enable all options.
$('select option:not(:first)').prop('disabled',false);

// Then we take each selected value and disable that option in all selects.
$('select').filter(function() { return $(this).val() != 'Please Select' }).each(function() {
$('select').not(this).find('option[value='+this.value+']').prop('disabled',true);
});

});

Здесь у вас есть рабочая скрипка … https://fiddle.jshell.net/rigobauer/26ce42od/

Совет, я не думаю, что вы можете использовать массивы с id и, вероятно, собирается доставить вам проблемы. Вам лучше установить уникальный идентификатор для каждого выбора, что довольно легко в вашем случае …

<?php for ($i= 0; $i<5; $i++) { ?>
<select id="select<?=$i?>" name="select[]">
<option hidden selected>Please Select</option>
<option value="1">Test 1</option>
<option value="2">Test 2</option>
<option value="3">Test 3</option>
</select>
<?php } ?>

Я надеюсь, что это помогает

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]