У меня выпадающий список с 4-мя элементами, такими как
'All', 'Fi', 'Cu', 'Common'.
. Здесь пользователю нужно разрешить выбирать 'All'
только в том случае, если в нем нет элемента. Если в нем есть хотя бы один элемент, скажем 'Cu'
, и если пользователь выбирает 'All'
, то выбор должен быть предотвращен, и 'All'
будет удалено из раскрывающегося списка.
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.css"></script>
<div style="padding:10px;width:200px;">
<select id="du_select" class="ui fluid dropdown" name="du_graph_types" multiple="">
<option value="">Select DU</option>
<option value="all">All</option>
<option value="copper">Copper</option>
<option value="fiber">Fiber</option>
<option value="common">Common</option>
</select>
</div>
<script type="text/javascript">
$('#du_select').dropdown({
onChange: function(value, text, $selectedItem) {
// custom action
if (value.length > 1 && value.includes('all')) {
const index = value.indexOf('all');
if (index > -1) {
value.splice(index, 1);
}
console.log('sel_items : ' + value)
$('#du_select').dropdown('clear').dropdown('set selected',value)
alert('Before selecting "All", clear the existing DU type')
}
}
});
</script>
JSFiddle
Но при этом элементы удаляются из самого раскрывающегося списка.
Какую ошибку я здесь делаю?