Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для Ариелька
2 / 2 / 0
Регистрация: 21.04.2013
Сообщений: 72

Удаление дубликата в другом select

06.05.2020, 21:31. Показов 472. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую.
Далек я от JS, однако требуется решить проблему. Не выходит.
Есть набор select-ов. Допустим 4 шт.
Везде одинаковый набор данных (для теста на соответствие ключ-значение)
Т.е. в каждом select-e должно быть уникальное значение. И если я в одном select-e выбираю значение, которое я уже выбрал в другом, то в другом оно сбрасывается. А в текущем остается.

Набросал как получилось JS, но почему то срабатывает через раз... точнее через 10 раз, и не могу понять закономерности.

JavaScript
1
2
3
4
5
6
$('.selct').on('change', function() {
  if($(this).val() == $(".selct").not(this).val()) {
    alert('It"s WORK!');
    $(".selct").not(this).val('')
  }
});
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
                        <select class="custom-select selct" name="d_1">
                                <option selected disabled>&nbsp;</option>
                                <option value="because of the rain.">because of the rain.</option>
                                <option value="because it’s cheap.">because it’s cheap.</option>
                                <option value="to keep warm in winter.">to keep warm in winter.</option>
                                <option value="to write to their friends.">to write to their friends.</option>
                                <option value="to get good jobs.">to get good jobs.</option>
                        </select>
                    <!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= -->                    
                        <select class="custom-select selct" name="d_2">
                                <option selected disabled>&nbsp;</option>
                                <option value="because of the rain.">because of the rain.</option>
                                <option value="because it’s cheap.">because it’s cheap.</option>
                                <option value="to keep warm in winter.">to keep warm in winter.</option>
                                <option value="to write to their friends.">to write to their friends.</option>
                                <option value="to get good jobs.">to get good jobs.</option>
                            </select>               
                    <!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= -->                    
                        <select class="custom-select selct" name="d_3">
                                <option selected disabled>&nbsp;</option>
                                <option value="because of the rain.">because of the rain.</option>
                                <option value="because it’s cheap.">because it’s cheap.</option>
                                <option value="to keep warm in winter.">to keep warm in winter.</option>
                                <option value="to write to their friends.">to write to their friends.</option>
                                <option value="to get good jobs.">to get good jobs.</option>
                            </select>                   
                    <!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= -->                    
                        <select class="custom-select selct" name="d_4">
                                <option selected disabled>&nbsp;</option>
                                <option value="because of the rain.">because of the rain.</option>
                                <option value="because it’s cheap.">because it’s cheap.</option>
                                <option value="to keep warm in winter.">to keep warm in winter.</option>
                                <option value="to write to their friends.">to write to their friends.</option>
                                <option value="to get good jobs.">to get good jobs.</option>
                            </select>
Помогите разобраться, совсем мозг вытекает уже. Может даже не в ту сторону думаю решение.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.05.2020, 21:31
Ответы с готовыми решениями:

Как отображать определенные данные в <select> в зависимости от значений в другом <select>?
Здравствуйте! У меня на страницу есть два &lt;select&gt;. В каждом из них располагаются даты в формате dd.mm.yyyy. &lt;select...

Скрывать select если в другом select выбран определенный value
допустим есть форма &lt;form&gt; &lt;select id=&quot;i1&quot; name=&quot;price1&quot;&gt; &lt;option value=&quot;0&quot;&gt;нет&lt;/option&gt; &lt;option...

Удаление дубликата
Здравствуйте,форумчане! Подскажите пожалуйста, как реализовать данную задачу! Есть в таблице клиентов много записей двойных для...

1
 Аватар для Soldado
901 / 833 / 198
Регистрация: 28.06.2012
Сообщений: 1,607
Записей в блоге: 4
07.05.2020, 11:42
Как вариант.
Селекторы имеют "память" и лучше их при обновлении страницы генерировать из скрипта в блок #wrap , а не прописывать в теле документа.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 <script>
 
$(document).ready(function() { 
var i = 0;
while (i < 5) { // загружаем селекторы
  $('#wrap').append('<select class="custom-select selct" name="d_1"><option selected disabled>&nbsp;</option><option value="because of the rain.">because of the rain.</option><option value="because it’s cheap.">because it’s cheap.</option><option value="to keep warm in winter.">to keep warm in winter.</option><option value="to write to their friends.">to write to their friends.</option> <option value="to get good jobs.">to get good jobs.</option></select> ');
  i++;
};
 
                                
                                
                                
   $('.selct').on('change', function() {
    
        var valText=$(this).val();
        $('<span>'+valText+'</span>').replaceAll(this);
        
        
             $(".selct").each(function() {
                  $('option:contains('+valText+')').remove();                  
              });/*/each*/
              
       });                              
                               
});/*end ready*/
  </script>  
  
 
</head>
 
<body><div id='wrap'>
 
                      
 
</div></body>
Добавлено через 5 минут
Заменяем селектор в котором сделали выбор каким-то элементом (у меня span, можно div, стилизировав как угодно) содержащим выбранное значение
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.05.2020, 11:42
Помогаю со студенческими работами здесь

Удаление дубликата с меньшим id
Здравствуйте! Есть таблица с повторяющимися записями по полю 'mail'. Подскажите пожалуйста как удалить дублированную строку, которая...

Изменение размера миниатюры и удаление дубликата в отдельной записи
Всем привет,такой вопрос интересует,как изменить размер в миниатюры в вновь добавляемую запись?:)Есть сайт ,у него есть несколько...

Удаление файлов, для которых нет дубликата с другим расширением
Приветствую знатоков! Как можно внутри папки привести в соответствие кол-во файлов по одному из типов (удалив ненужные)? Точное...

Как сделать, чтобы при выборе например в Select страна - Россия, в другом select'e были только города РФ?
На HTML-форме есть 2 SELECT получающие option (список стран и городов) от MS SQL c двух взаимосвязанных таблиц, как сделать так, чтобы...

Выбрать option в select при выборе другого option в другом select
Всем добрый привет! Подскажите, пожалуйста, как реализовать вот какую штуку: необходимо, чтобы при выборе option с value=0 в select с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru