Проверить, существует ли в jquery optgroup по id / label? - PullRequest
4 голосов
/ 21 июля 2010

У меня есть раскрывающийся список, и в другом процессе добавьте optgroups / options к этому раскрывающемуся списку, и эта часть работает нормально.

Но мне может понадобиться добавить аналогичные optgroups с большим количеством данных, и я хочу проверить существование этой optgroup, и, если она существует, не добавлять ее, а просто добавить опции в существующую optgroup.

Я искал вокруг и, похоже, не могу найти какую-либо помощь при выборе optgroup.

Мой существующий выпадающий список имеет идентификатор «user_search_select», и возможные значения optgroup могут быть как «dept_name» или «loc_name» или «last_name»

Так что после того, как я добавлю больше данных, я могу захотеть отсортировать опции внутри каждой optgroup, возможно ли это и как?

Спасибо!

1 Ответ

6 голосов
/ 22 июля 2010

Проверьте это из . Хотя я не пробовал, похоже, что он мог бы выполнить работу по сортировке.

О проверке существования. В основном вы можете проверить с помощью:

<script type="text/javascript">
    $(document).ready(function() {
        if($('#mySelect optgroup[label=New group]').html() == null){
           $('#mySelect').append('<optgroup label="New group"></optgroup>');
           $('#mySelect optgroup[label=New group]').append('<option value="1">New element</option>');
        } else {
           $('#mySelect optgroup[label=New group]').append('<option value="1">New element</option>');
        }
    });
</script>

В сценарии if проверяется, существует ли optgroup с меткой New group, если такой группы нет - добавьте новую группу, а затем добавьте параметр в эту группу. В остальной части просто добавьте опцию в существующую новую группу.

Тогда вы должны применить сортировку с помощью плагина.

...