2016-01-07 3 views
22

Если нашел действительно раздражает ошибку на текущем (IOS 9.2) мобильного сафари (первый выходящего с прошивки 7!)Mobile Safari мульти выберите ошибку

Если вы используете множественный выбор полей на мобильном сафари - как это:

<select multiple> 
    <option value="test1">Test 1</option> 
    <option value="test2">Test 2</option> 
    <option value="test3">Test 3</option> 
</select> 

У вас будут проблемы с автоматическим выбором!

iOS автоматически выбирает первый вариант после того, как вы открыли выбор (без какого-либо взаимодействия с пользователем), - но он не отобразит его с помощью синего цвета, выберите «проверить».

Так что, если вы теперь выбрать второй вариант, то выбор будет вам сказать, что два варианта выбраны (но только выделив один, как выбран) ...

Если теперь закрыть и открыть снова выбрать, IOS будет автоматически отмените выбор первого значения - если вы повторите, он будет выбран снова без какого-либо взаимодействия с пользователем.

Это действительно раздражающая системная ошибка, которая нарушает работу пользователя!

+1

Я подал сообщение об ошибке в apple, давайте подождем, как это разрешится. – migg

+1

@migg ошибка уже появляется на iOS 7, которая была выпущена два года назад ... Надеюсь, яблоко наконец скоро исправится:/ –

+0

Но я не могу воспроизвести его на 9.1, так что мне кажется, что он был введен в 9.2. Но мне не нужно проверять 7. – migg

ответ

20

решение для сафари мульти выберите ошибку и Empty и Disabled вариант клещ связанный с этим вопрос:

<select multiple> 
 
<optgroup disabled hidden></optgroup> 
 
<option value="0">All</option> 
 
<option value="1">Test 1</option> 
 
<option value="2">Test 2</option> 
 
<option value="3">Test 3</option> 
 
<option value="4">Test 4</option> 
 
</select>

Добавить инвалида и скрытые OPTGROUP до реальных опционов.

+0

это работа для меня, и я думаю, что это лучший способ, спасибо – Serip88

+0

Работы. Должен быть отмечен как правильный ответ. – ntaso

+0

Любое обновление по этому вопросу? так как использование optgroup приводит к сбою моего мобильного приложения. – Anky

13

После долгих исследований я обнаружил следующее (не самый красивый), но рабочее решение:

Хитрость заключается в том, чтобы добавить пустой и инвалидов выберите опцию в положение кулака:

<select multiple> 
    <option disabled></option> 

    <option value="test1">Test 1</option> 
    <option value="test2">Test 2</option> 
    <option value="test3">Test 3</option> 
</select> 

Это не позволит iOS автоматически выбрать первый вариант и сохранить правильные и чистые значения выбора!

Пустая опция не видна, и подсчет выбранных значений правильный.

+3

Показывается тик, когда вы нажимаете вверху list –

+1

Да, это недостаток этого решения ... –

+3

Добавление до (или обертывания) вариантов также устраняет проблему. Это также предотвращает появление галочки при нажатии.Пустая строка все еще отображается, вероятно, зарезервирована для значения атрибута метки метки optgroup. – user3336882