2016-11-15 3 views
-2

Используя простой Javascript, легко скрыть опцию select-menu с помощью скрытого атрибута HTML5. Но когда я хочу стилизовать меню выбора с помощью jQuery-UI, скрытый атрибут игнорируется. Например, определить два выберите меню:jQuery-UI не распознает скрытый атрибут HTML5

<select id="one"> 
    <option>option 1</option> 
    <option>option 2</option> 
    <option hidden>hidden option</option> 
    <option>option 4</option> 
</select> 

<select id="two"> 
    <option>option 1</option> 
    <option>option 2</option> 
    <option hidden>hidden option</option> 
    <option>option 4</option> 
</select> 

Вот Javascript/JQuery:

$(function(){    
    $('#one').selectmenu(); 
}); 

При запуске этого примера, третий элемент скрыт во втором selectmenu, но не в первой. Кажется, что jQuery-UI отключил скрытый атрибут. См

jsFiddle

для живого примера. Я что-то делаю неправильно или есть ошибка в jQuery-UI?

+0

В этой скрипте нет элемента 'option' с атрибутом' hidden'. (Но если я [обновляю его, чтобы иметь его] (http://jsfiddle.net/xa4219ya/2/), пользовательский интерфейс jQuery по-прежнему, похоже, не уважает его [по крайней мере, не в этой обновленной скрипке, используя Chrome].) –

+0

Полное содержание вашего вопроса должно быть ** в ** ваш вопрос, а не только связанный. Ссылки гниль, что делает вопрос и его ответы бесполезными для людей в будущем, и людям не нужно уходить с сайта, чтобы помочь вам. Положите [mcve] ** в ** вопрос, в идеале используя Stack Snippets (кнопка панели инструментов <> '), чтобы сделать его выполнимым. –

+0

Почему бы вам не использовать класс css? – Oyeme

ответ

0

Мой способ решения этой проблемы было бы, чтобы удалить их,

$(function(){    
    $('#one option[hidden]').remove(); 
    $('#one').selectmenu(); 
}); 

jsfiddle

+0

Вызов этого обходного пути подразумевает, что это действительно ошибка в jQuery-UI? В этом случае я подниму проблему на GitHub, чтобы команда jQuery могла ее исправить. – PVM

+0

@PVM Вы правы. Я тоже искал лучшие решения и не мог найти ни одного, должен быть ошибкой. Будьте внимательны и обновляйте здесь, когда получите ответ. – Sagar

0

Оказывается, что это была ошибка в JQuery-UI. Я выпустил a ticket on GitHub, и проблема была исправлена ​​в течение 24 часов.

Смежные вопросы