Есть ли полнофункциональная замена выпадающего списка для HTML SELECT, которая работает в IE? - PullRequest
1 голос
/ 20 ноября 2008

Мы определили в предыдущем вопросе , что многие функции HTML SELECT не поддерживаются в IE. Есть ли альтернативный виджет, который вы порекомендуете из своего опыта, который соответствует следующим требованиям?

  1. Относится к свойству contentEditable (не допускает изменения выбора, если true)
  2. Относится к свойству disabled отдельных OPTIONS (показывает их «серым» или с зачеркнутым шрифтом и делает их невыбираемыми)
  3. Поддерживает группы опций (OPTGROUP элементы)
  4. Поддерживает style опции, такие как border и margin в SELECT и все подэлементы
  5. Поддерживает динамическое добавление и удаление OPTION и OPTGROUP элементов
  6. Поддерживает вышеупомянутое в IE версии 6 и выше

РЕДАКТИРОВАТЬ: Как отметил @Joel Coehoorn, пункты 3 и 5 выше в настоящее время поддерживаются в IE. Они включены сюда, чтобы убедиться, что они не пропущены при замене виджета.

Ответы [ 2 ]

2 голосов
/ 20 ноября 2008

Наконец, проверьте, что IE6 + поддерживает # 3 и # 5, и вы можете (не) использовать OPTGROUP, чтобы обойти большинство других элементов.

Вы можете сделать это, имея optgroup без опций внутри, например:

<optgroup label="--"></optgroup>

Вы можете сделать метку как угодно, но суть в том, что в итоге вы получите элемент, который выглядит как обычный вариант, но не может быть выбран. Это открывает двери для всех видов веселья:

  • Вы можете отключить определенные элементы, добавив их в качестве оптгрупп
  • Вы можете предотвратить изменения выбора, закодировав все опции, кроме текущей, как optgroups (используйте другую текстовую клавишу, чтобы указать, что они отключены, если вам нужно)
  • Вы можете использовать пробел, - или & mdash; метки для обозначенных простых разделителей, а не целых групп.

Это составляет большинство # 1 и # 2 в вашем списке, во всяком случае, по крайней мере, функциональных точек.

Причина "(неправильного) использования" заключается в том, что это не пройдет большинство валидаторов HTML. Однако этот прием работает во всех основных браузерах.

1 голос
/ 12 марта 2010

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

демонстрационная страница

СВН

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...