Intereting Posts
Применение RDFa к списку завершенных проектов с местоположением Не отображается ли отображение дублирующегося содержимого на SEO / семантику? как скрыть маркеры в меню навигации и нижних колонтитулах, но покажите их для элементов списка Почему значения трехзначного шестнадцатеричного цветового кода интерпретируются по-разному в Internet EXPLORER? Как выровнять радиокнопки горизонтально под ярлыками Кнопка «Назад» PHP и браузера – что действительно происходит Перетаскивание в любом месте экрана с несколькими элементами одного и того же classа идентификатора и тега HTML Элементы эффекта Parallax делают прокрутку с задержкой Javascript для кода цикла / инкремента html со значениями до 55 Использование cm / mm в CSS веб-приложения, которое реплицирует взаимодействие с бумагой, является хорошей практикой? Добавление атрибута в jQuery Трехмерный массив Javascript Фиксированное верхнее меню прокрутки не позволяет достичь нижней части экрана метка ответа VS метатег : after and: before css псевдо-элементы взломают IE 7

Есть ли максимальное количество опций (значений) в выпадающем меню HTML?

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

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

Я предполагаю, что это теоретически неограниченно, очевидно, не на практике, как оперативная память компьютера, и ограничения конкретного браузера вступают в игру.

Сколько до ухудшения производительности?

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


EDIT: По опыту, у меня были выпадающие списки с тысячами вариантов. Это было не идеально, хотя, потому что кто хочет прокрутить все это? Вот почему автозаполнение какого-либо типа более желательно по многим причинам, особенно по опыту конечного пользователя.

Обновление: на основе DannyG, протестированного на Ubuntu с Firefox на 4GB mem pc, ограничение было далеко за пределами 10k тегов. Мой текущий Firefox настроен на использование до 3 ГБ, и он достиг 100k опций, но для этого вам придется изменить конфигурацию по умолчанию браузера, я думаю.

Мы решили использовать автозаполнение Ajax в качестве замены во всех случаях, где указаны 30+ опций.

Оба Firefox и Chrome ограничены параметрами 10k в Windows 64b с 4 ГБ оперативной памяти по умолчанию.

Протестировано с помощью JSFiddle http://jsfiddle.net/Mare6/

Html:

Testing Select  

Javascript

 window.onLoad = function() { for (var i=0; i<10000; i++) { var name = "Option "+i; var sel = document.getElementById("list"); sel.options[sel.options.length] = new Option(name,i); } }); 

С Уважением,

Я использовал около 500 в списке без заметного влияния на производительность, если это помогает!

По моему опыту, ухудшение производительности, как правило, на стороне пользователя, мое золотое правило (узнанное где-то) – это семь вариантов, дайте или возьмите несколько.

На более основе SW, вероятно, верхний диапазон Integer.

EDIT: BTW. Это относится к Атвуд

Да, максимум для Chrome и Safari – это 10000 элементов для select элементов.

Соответствующие строки в источнике Chrome можно найти здесь: Определенный максимальный размер 10000 , код, который обеспечивает ограничение и помещает ошибку в консоли

У Firefox, похоже, нет практического предела от моего тестирования.

Теоретически, нет предела, но некоторые браузеры будут применять ограничения. (Аналогично использованию document.write в бесконечном цикле.)

Но, в конце концов, самое большее, что я когда-либо рекомендовал бы в раскрывающемся списке, составляет около 50, просто потому, что никто не хочет делать так много прокрутки. При этом, если организовано, скажем, в алфавитном порядке, может быть уместно иметь до 200 предметов в раскрывающемся списке. (Как для регистрации, где вы должны выбрать страну рождения.)

Кроме того, когда у вас есть много разных вариантов выбора, выпадающий список, как правило, лучший вариант, независимо.