Виджет Selectmenuверсия добавлена: 1.0
Описание: Создаёт виджет выпадающего списка
Описание: Создаёт виджет выпадающего списка
Меню выбора основано на нативном элементе select, который скрыт от пользователя и заменён на кнопку с пользовательским стилем, соответствующим внешнему виду фреймворка jQuery Mobile. Меню выбора поддерживает ARIA и доступно с помощью клавиатуры на настольных компьютерах.
По умолчанию, фреймворк использует нативное меню операционной системы для работы с пользовательской кнопкой. При нажатии на кнопку откроется нативное меню операционной системы. При выборе значения и закрытии меню текст пользовательской кнопки обновляется, чтобы соответствовать выбранному значению. Обратите внимание, что фреймворк также предоставляет возможность использования пользовательских (не нативных) меню выбора.
Чтобы добавить меню выбора на вашу страницу, начните со стандартного элемента select , заполненного набором элементов option. Установите атрибут for элемента label , чтобы он соответствовал атрибуту id элемента select, для семантической связи. Можно скрывать метку, если она не нужна в макете страницы, но для семантических и доступностных целей она должна быть в разметке.
Фреймворк найдёт все элементы select и автоматически преобразует их в меню выбора, вам не нужно применять атрибут data-role. Чтобы предотвратить автоматическое преобразование элемента select, добавьте атрибут data-role="none" к элементу select.
Виджет selectmenu использует фреймворк CSS jQuery Mobile для настройки своего внешнего вида. Если требуется настройка стиля, специфичная для selectmenu, для переопределения или в качестве ключей для опции classes можно использовать следующие имена классов:
ui-selectmenu: Внешний контейнер для selectmenu. ui-selectmenu-button: Кнопка с пользовательским стилем для selectmenu ui-selectmenu-button-icon: Иконка кнопки selectmenu ui-selectmenu-button-text: Текст кнопки selectmenu ui-selectmenu-custom: Внешний контейнер для пользовательского selectmenu. ui-selectmenu-custom-list: Элемент списка для пользовательского selectmenu ui-selectmenu-custom-header-close-button: Кнопка закрытия для пользовательского selectmenu ui-selectmenu-custom-header-close-button-icom: Иконка кнопки закрытия для пользовательского selectmenu <label for="select-choice-0" class="select">Shipping method:</label> <select name="select-choice-0" id="select-choice-0"> <option value="standard">Standard: 7 day</option> <option value="rush">Rush: 3 days</option> <option value="express">Express: next day</option> <option value="overnight">Overnight</option> </select>
Это создаст базовое меню выбора. По умолчанию стили устанавливают ширину поля ввода на 100% родительского контейнера и выстраивают метку на отдельной строке.
Для более компактной версии, полезной в инструментальных панелях и ограниченных пространствах, добавьте атрибут data-mini="true" к элементу, чтобы создать мини-версию.
<label for="select-choice-min" class="select">Shipping method:</label> <select name="select-choice-min" id="select-choice-min" data-mini="true"> <option value="standard">Standard: 7 day</option> <option value="rush">Rush: 3 days</option> <option value="express">Express: next day</option> <option value="overnight">Overnight</option> </select>
Это создаст select, который не такой высокий, как стандартная версия, и имеет меньший размер шрифта.
Для визуального группирования в длинных формах можно обернуть select в контейнер с классом ui-field-contain.
Примечание: Атрибут data- data-role="fieldcontain" устарел начиная с jQuery Mobile 1.4.0 и будет удален в 1.5.0. Используйте класс ui-field-contain вместо него.
<div class="ui-field-contain">
<label for="select-choice-1" class="select">Shipping method:</label>
<select name="select-choice-1" id="select-choice-1">
<option value="standard">Standard: 7 day</option>
<option value="rush">Rush: 3 days</option>
<option value="express">Express: next day</option>
<option value="overnight">Overnight</option>
</select>
</div> Поле ввода select теперь отображается так:
Пример select с длинным списком значений:
В следующем примере значения организованы в элементы optgroup. Поддержка этой функции в мобильных select элементах не везде стабильна, но улучшается.
<div class="ui-field-contain">
<label for="select-choice-nc" class="select">Preferred delivery:</label>
<select name="select-choice-8" id="select-choice-nc">
<optgroup label="FedEx">
<option value="firstOvernight">First Overnight</option>
<option value="expressSaver">Express Saver</option>
<option value="ground">Ground</option>
</optgroup>
<optgroup label="UPS">
<option value="firstOvernight">First Overnight</option>
<option value="expressSaver">Express Saver</option>
<option value="ground">Ground</option>
</optgroup>
<optgroup label="US Mail">
<option value="standard">Standard: 7 day</option>
<option value="rush">Rush: 3 days</option>
<option value="express">Express: next day (disabled)</option>
<option value="overnight">Overnight</option>
</optgroup>
</select>
</div> Для создания сгруппированного набора полей select, сначала добавьте select и соответствующее label. Установите атрибут for элемента label , чтобы он соответствовал атрибуту id элемента select для семантической связи.
Поскольку элемент label будет связан с каждым отдельным полем select и будет скрыт для стилизации, рекомендуется обернуть select в элемент fieldset с атрибутом legend, который будет общей меткой для сгруппированных полей.
Наконец, необходимо обернуть fieldset в div с атрибутом data-role="controlgroup", чтобы его можно было стилизовать как группу.
<div class="ui-field-contain">
<fieldset data-role="controlgroup">
<legend>Date of Birth:</legend>
<label for="select-choice-month">Month</label>
<select name="select-choice-month" id="select-choice-month">
<option>Month</option>
<option value="jan">January</option>
<!-- etc. -->
</select>
<label for="select-choice-day">Day</label>
<select name="select-choice-day" id="select-choice-day">
<option>Day</option>
<option value="1">1</option>
<!-- etc. -->
</select>
<label for="select-choice-year">Year</label>
<select name="select-choice-year" id="select-choice-year">
<option>Year</option>
<option value="2011">2011</option>
<!-- etc. -->
</select>
</fieldset>
</div> Поля select также могут использоваться для группировки наборов с более чем одним связанным выбором. Чтобы создать набор горизонтальных кнопок, добавьте data-type="horizontal" к fieldset. Обратите внимание, что кнопки, которые вызывают select, изменят размер в зависимости от значения выбранного в данный момент элемента.
<fieldset data-role="controlgroup" data-type="horizontal">
Вы также можете указать любые атрибуты jQuery Mobile button data- для элемента select. В этом примере мы устанавливаем тему, иконку и свойства inline:
Фреймворк способен создавать пользовательское меню на основе списка значений элемента select. Мы рекомендуем использовать пользовательское меню, когда требуется множественный выбор или когда само меню должно быть стилизовано с помощью CSS.
Вы можете использовать пользовательские меню вместо нативного меню операционной системы. Пользовательское меню поддерживает отключенные значения и множественный выбор (в то время как нативные мобильные операционные системы поддерживают это не всегда), предоставляет элегантный способ обработки значений по умолчанию и восстанавливает недостающие функции на определённых платформах, таких как optgroup на Android (все подробно описано ниже). Кроме того, фреймворк применяет тему пользовательской кнопки к меню, чтобы лучше соответствовать внешнему виду и обеспечивать визуальную согласованность на разных платформах. Наконец, пользовательские меню часто выглядят лучше в браузерах на настольных компьютерах, так как нативные меню настольных компьютеров меньше, чем на мобильных, и могут выглядеть непропорционально.
Помните, что при обработке нативного select для создания пользовательского меню есть накладные расходы. Если на странице много select или у select длинный список значений, это может повлиять на производительность страницы, поэтому мы рекомендуем использовать пользовательские меню с осторожностью.
Чтобы использовать пользовательские меню для конкретного select, добавьте атрибут data-native-menu="false". В качестве альтернативы это можно также выполнить программно, установив опцию конфигурации select menu nativeMenu в значение false в обработчике события mobileinit для достижения того же эффекта. Это позволит по умолчанию использовать пользовательское меню для всех select.
$(document).on( "mobileinit", function() {
$.mobile.selectmenu.prototype.options.nativeMenu = false;
}); Когда у select небольшое количество значений, которое помещается на экране устройства, меню отобразится как небольшое всплывающее окно с анимацией появления:
Если вариантов слишком много для отображения на экране устройства, фреймворк автоматически создаст новую страницу в стиле диалога, содержащую стандартный список значений. Это позволит использовать встроенную на устройстве прокрутку для перемещения по длинному списку. Текст внутри label используется в качестве заголовка для этой страницы. Учтите события страницы и контейнера страницы, которые будут сгенерированы для этой созданной страницы.
Примечание: Поведение, при котором пользовательское меню select создает новую страницу при большом количестве значений, устарело начиная с jQuery Mobile 1.4.0. Начиная с версии 1.5.0, пользовательское меню select будет переходить к использованию нативного поведения select, если список значений слишком длинный.
jQuery Mobile автоматически отключает и форматирует теги option с атрибутом disabled. В примере ниже второй вариант «Rush: 3 days» отключен.
Разработчики часто включают в элемент select опцию «null», чтобы заставить пользователя выбрать вариант. Если на вашей странице присутствует опция по умолчанию, jQuery Mobile скроет ее во всплывающем меню, показывая только допустимые варианты, и отобразит текст по умолчанию в меню в качестве заголовка. Опция по умолчанию добавляется, когда фреймворк находит:
value=""). Примечание: Указание опции в качестве значения по умолчанию путем предоставления атрибута value и установки его в "" устарело начиная с jQuery Mobile 1.4.0 и будет удалено в 1.5.0.
data-placeholder="true". (Это позволяет использовать опцию со значением и текстовым узлом как опцию по умолчанию).Вы можете отключить эту функцию, используя опцию плагина selectmenu hidePlaceholderMenuItems:
$.mobile.selectmenu.prototype.options.hidePlaceholderMenuItems = false;
Примеры различных опций по умолчанию:
Если атрибут multiple присутствует в вашей разметке, jQuery Mobile дополнит элемент несколькими дополнительными аспектами:
multiple на элементе select с nativeMenu установленным в false. Когда выпадающий список достаточно большой, чтобы меню открывалось на новой странице, текст-заполнитель отображается в кнопке, когда элементы не выбраны, а текст label отображается в заголовке меню. Это отличается от меньших накладных меню, где текст-заполнитель отображается и в кнопке, и в заголовке, а также от полноэкранных выпадающих списков, где текст-заполнитель вообще не используется.
Если меню выпадающего списка содержит элементы optgroup, jQuery Mobile создаст разделитель и сгруппирует элементы на основе текста атрибута label:
Вы также можете указать любой атрибут темы jQuery Mobile для кнопки data- на элементе выпадающего списка. В этом примере мы устанавливаем тему, значок и свойства выравнивания:
Атрибут data-overlay-theme можно добавить к элементу выпадающего списка, чтобы задать цвет накладного слоя для диалоговых пользовательских меню выпадающих списков и внешнюю границу меньших пользовательских меню. По умолчанию для накладных слоев используются цвета блока содержимого для палитры "a".
Примечание: пользовательские выпадающие списки используют виджет всплывающего окна для меню. Поскольку контейнер всплывающего окна находится в другом месте на странице, он не может унаследовать палитру темы от родителя выпадающего списка и наследует её от страницы.
Плагин меню выпадающего списка будет автоматически инициализирован на любой странице, содержащей меню выпадающего списка, без необходимости атрибута data-role в разметке. Однако вы можете напрямую вызвать плагин меню выпадающего списка для любого селектора, как и любой обычный плагин jQuery:
$( "select" ).selectmenu();
Виджет selectmenu добавляет ID к генерируемым элементам. Если у него нет ID, он будет использовать префикс, состоящий из select- и уникального числа для элементов. Если у него есть ID, он будет использовать его в качестве префикса. ID различных элементов, сгенерированных виджетом selectmenu, создается следующим образом:
<prefix>-button <prefix>-listbox Этот идентификатор назначается элементу только тогда, когда виджет selectmenu создаётся с опцией nativeMenu установленной в значение false.
Поскольку меню реализовано как всплывающее окно, оно будет назначать ID генерируемым элементам. Подробности см. в разделе генерации ID виджета всплывающего окна генерация ID.
<prefix>-menu Этот идентификатор назначается элементу только тогда, когда виджет selectmenu создаётся с опцией nativeMenu установленной в значение false.
Например, создание нестандартного selectmenu с
<select id="choose-city" data-native-menu="false"> <option>Caracas</option> <option>Warszawa</option> <option>Yekaterinburg</option> <option>Pretoria</option> </select>
приведёт к следующей разметке:
<div class="ui-select">
<a id="choose-city-button" href="#" role="button" aria-haspopup="true" class="ui-btn ui-icon-carat-d ui-btn-icon-right ui-corner-all ui-shadow" data-rel="popup">
<span>Caracas</span>
</a>
<select id="choose-city" data-native-menu="false" tabindex="-1">
<option>Caracas</option>
<option>Warszawa</option>
<option>Yekaterinburg</option>
<option>Pretoria</option>
</select>
<div id="choose-city-listbox-placeholder" style="display: hidden;"></div>
</div>
<div id="choose-city-listbox-screen" class="ui-popup-screen ui-screen-hidden ui-overlay-inherit"></div>
<div id="choose-city-listbox-popup" class="ui-popup-container ui-popup-hidden ui-popup-truncate">
<div id="choose-city-listbox" class="ui-selectmenu ui-popup ui-body-inherit ui-overlay-shadow ui-corner-all">
<div class="ui-header" ui-bar-inherit ui-screen-hidden">
<h1 class="ui-title"></h1>
</div>
<ul id="choose-city-menu" class="ui-selectmenu-list ui-listview" role="listbox" aria-labelledby="choose-city-button">
<li data-option-index="0" data-icon="false" class="ui-first-child" role="option" aria-selected="true">
<a href="#" tabindex="-1" class="ui-btn ui-btn-active">Caracas</a>
</li>
<li data-option-index="0" data-icon="false" role="option" aria-selected="false">
<a href="#" tabindex="-1" class="ui-btn ui-btn-active">Warszawa</a>
</li>
<li data-option-index="0" data-icon="false" role="option" aria-selected="false">
<a href="#" tabindex="-1" class="ui-btn ui-btn-active">Yekaterinburg</a>
</li>
<li data-option-index="0" data-icon="false" class="ui-last-child" role="option" aria-selected="false">
<a href="#" tabindex="-1" class="ui-btn ui-btn-active">Pretoria</a>
</li>
</ul>
</div>
</div> {
"ui-selectmenu-button": "ui-corner-all ui-shadow",
"ui-selectmenu-custom-header-close-button": "ui-corner-all"
} Укажите дополнительные классы для добавления к элементам виджета. Любые из классов, указанных в разделе Тема, могут использоваться в качестве ключей для переопределения их значения. Чтобы узнать больше об этом параметре, ознакомьтесь со статьей статьей о параметре classes.
Инициализируйте selectmenu с указанным параметром classes, изменив тему для класса ui-selectmenu:
$( ".selector" ).selectmenu({
classes: {
"ui-selectmenu": "highlight"
}
}); Получите или установите свойство параметра classes, после инициализации, здесь чтение и изменение темы для класса ui-selectmenu:
// Getter var themeClass = $( ".selector" ).selectmenu( "option", "classes.ui-selectmenu" ); // Setter $( ".selector" ).selectmenu( "option", "classes.ui-selectmenu", "highlight" );
"Close" Настраивает текст кнопки закрытия, что полезно для перевода на разные языки. Кнопка закрытия по умолчанию отображается как кнопка только с иконкой, поэтому текст не виден на экране, но читается программами для чтения с экрана, поэтому это важная функция доступности.
Этот параметр также доступен как атрибут данных: data-close-text="Fermer".
Инициализируйте selectmenu с указанным параметром closeText:
$( ".selector" ).selectmenu({
closeText: "Fermer"
}); Получите или установите параметр closeText, после инициализации:
// Getter var closeText = $( ".selector" ).selectmenu( "option", "closeText" ); // Setter $( ".selector" ).selectmenu( "option", "closeText", "Fermer" );
true Этот параметр также доступен как атрибут данных: data-corners="false".
Инициализируйте selectmenu с указанным параметром corners:
$( ".selector" ).selectmenu({
corners: false
}); Получите или установите параметр corners, после инициализации:
// Getter var corners = $( ".selector" ).selectmenu( "option", "corners" ); // Setter $( ".selector" ).selectmenu( "option", "corners", false );
false true указывает на то, что другие параметры виджетов имеют значения по умолчанию и заставляет код автоматического улучшения виджета jQuery Mobile опускать шаг, на котором он получает значения параметров из атрибутов данных. Это может улучшить время запуска. Этот параметр также доступен как атрибут данных: data-defaults="true".
Инициализируйте selectmenu с указанным параметром defaults:
$( ".selector" ).selectmenu({
defaults: true
}); Получите или установите параметр defaults, после инициализации:
// Getter var defaults = $( ".selector" ).selectmenu( "option", "defaults" ); // Setter $( ".selector" ).selectmenu( "option", "defaults", true );
false true. Этот параметр также доступен как атрибут данных: data-disabled="true".
Инициализируйте selectmenu с указанным параметром disabled:
$( ".selector" ).selectmenu({
disabled: true
}); Получите или установите параметр disabled, после инициализации:
// Getter var disabled = $( ".selector" ).selectmenu( "option", "disabled" ); // Setter $( ".selector" ).selectmenu( "option", "disabled", true );
null, inherited from parent optgroup. Он принимает одну букву от a до z, которая сопоставляется с палитрами, включенными в вашу тему. Возможные значения: буква палитры (a-z).
Этот параметр также доступен как атрибут данных: data-divider-theme="b".
Инициализируйте selectmenu с указанным параметром dividerTheme:
$( ".selector" ).selectmenu({
dividerTheme: "b"
}); Получите или установите параметр dividerTheme, после инициализации:
// Getter var dividerTheme = $( ".selector" ).selectmenu( "option", "dividerTheme" ); // Setter $( ".selector" ).selectmenu( "option", "dividerTheme", "b" );
true Этот параметр также доступен как атрибут данных: data-hide-placeholder-menu-items="false".
Инициализируйте selectmenu с указанным параметром hidePlaceholderMenuItems:
$( ".selector" ).selectmenu({
hidePlaceholderMenuItems: false
}); Получите или установите параметр hidePlaceholderMenuItems, после инициализации:
// Getter var hidePlaceholderMenuItems = $( ".selector" ).selectmenu( "option", "hidePlaceholderMenuItems" ); // Setter $( ".selector" ).selectmenu( "option", "hidePlaceholderMenuItems", false );
"carat-d" Для подавления значка необходимо использовать логическое выражение:
Этот параметр также доступен как атрибут данных: data-icon="star".
Инициализируйте selectmenu с указанным параметром icon:
$( ".selector" ).selectmenu({
icon: "star"
}); Получите или установите параметр icon, после инициализации:
// Getter var icon = $( ".selector" ).selectmenu( "option", "icon" ); // Setter $( ".selector" ).selectmenu( "option", "icon", "star" );
"right" Этот параметр также доступен как атрибут данных: data-iconpos="left".
Инициализируйте selectmenu с указанным параметром iconpos:
$( ".selector" ).selectmenu({
iconpos: "left"
}); Получите или установите параметр iconpos, после инициализации:
// Getter var iconpos = $( ".selector" ).selectmenu( "option", "iconpos" ); // Setter $( ".selector" ).selectmenu( "option", "iconpos", "left" );
true Применяет тень темы к значку кнопки выбора, если установлен в true.
Этот параметр также доступен как атрибут данных: data-iconshadow="false".
Инициализируйте selectmenu с указанным параметром iconshadow:
$( ".selector" ).selectmenu({
iconshadow: false
}); Получите или установите параметр iconshadow, после инициализации:
// Getter var iconshadow = $( ".selector" ).selectmenu( "option", "iconshadow" ); // Setter $( ".selector" ).selectmenu( "option", "iconshadow", false );
See below Значение по умолчанию initSelector для виджета selectmenu:
"select:not( :jqmData(role='slider')):not( :jqmData(role='flipswitch') )"
Примечание: Этот параметр устарел в версии 1.4.0 и будет удален в версии 1.5.0.
Начиная с jQuery Mobile 1.4.0, initSelector больше не является параметром виджета. Вместо этого он объявлен непосредственно в прототипе виджета. Таким образом, вы можете указать пользовательское значение, обработав событие mobileinit и переписав initSelector в прототипе:
$( document ).on( "mobileinit", function() {
$.mobile.selectmenu.prototype.initSelector = "div.custom";
}); Примечание: Не забудьте прикрепить обработчик mobileinit после загрузки jQuery, но до загрузки jQuery Mobile, поскольку событие срабатывает в процессе загрузки jQuery Mobile.
Значение этого параметра — строка селектора jQuery. Фреймворк выбирает элементы на основе значения этого параметра и создает виджеты selectmenu для каждого из результирующего списка элементов.
(версия устарела: 1.4.0)null (false) Этот параметр также доступен как атрибут данных: data-inline="true".
Инициализируйте selectmenu с указанным параметром inline:
$( ".selector" ).selectmenu({
inline: true
}); Получите или установите параметр inline, после инициализации:
// Getter var inline = $( ".selector" ).selectmenu( "option", "inline" ); // Setter $( ".selector" ).selectmenu( "option", "inline", true );
null (false) true, это отобразит более компактную версию selectmenu, которая использует меньшую вертикальную высоту, применяя класс ui-mini к внешнему элементу виджета selectmenu. Примечание: Параметр mini устарел в версии 1.5 и будет удален в версии 1.6
Этот параметр также доступен как атрибут данных: data-mini="true".
true Этот параметр также доступен как атрибут данных: data-native-menu="false".
Инициализация selectmenu с параметром nativeMenu:
$( ".selector" ).selectmenu({
nativeMenu: false
}); Получение или установка параметра nativeMenu после инициализации:
// Getter var nativeMenu = $( ".selector" ).selectmenu( "option", "nativeMenu" ); // Setter $( ".selector" ).selectmenu( "option", "nativeMenu", false );
"null, inherited from parent" Этот параметр также доступен как атрибут данных: data-overlay-theme="a".
Инициализация selectmenu с параметром overlayTheme:
$( ".selector" ).selectmenu({
overlayTheme: "a"
}); Получение или установка параметра overlayTheme после инициализации:
// Getter var overlayTheme = $( ".selector" ).selectmenu( "option", "overlayTheme" ); // Setter $( ".selector" ).selectmenu( "option", "overlayTheme", "a" );
true on iOS platforms Этот параметр также доступен как атрибут данных: data-prevent-focus-zoom="true".
Инициализация selectmenu с параметром preventFocusZoom:
$( ".selector" ).selectmenu({
preventFocusZoom: false
}); Получение или установка параметра preventFocusZoom после инициализации:
// Getter var preventFocusZoom = $( ".selector" ).selectmenu( "option", "preventFocusZoom" ); // Setter $( ".selector" ).selectmenu( "option", "preventFocusZoom", false );
true Этот параметр также доступен как атрибут данных: data-shadow="false".
Инициализация selectmenu с параметром shadow:
$( ".selector" ).selectmenu({
shadow: false
}); Получение или установка параметра shadow после инициализации:
// Getter var shadow = $( ".selector" ).selectmenu( "option", "shadow" ); // Setter $( ".selector" ).selectmenu( "option", "shadow", false );
null, inherited from parent Возможные значения: буква образца (a-z).
Этот параметр также доступен как атрибут данных: data-theme="b".
Инициализация selectmenu с параметром theme:
$( ".selector" ).selectmenu({
theme: "b"
}); Получение или установка параметра theme после инициализации:
// Getter var theme = $( ".selector" ).selectmenu( "option", "theme" ); // Setter $( ".selector" ).selectmenu( "option", "theme", "b" );
Вызов метода close:
$( ".selector" ).selectmenu( "close" );
Вызов метода destroy:
$( ".selector" ).selectmenu( "destroy" );
Вызов метода disable:
$( ".selector" ).selectmenu( "disable" );
Вызов метода enable:
$( ".selector" ).selectmenu( "enable" );
Вызов метода open:
$( ".selector" ).selectmenu( "open" );
Вызов метода:
var isDisabled = $( ".selector" ).selectmenu( "option", "disabled" );
Вызов метода:
var options = $( ".selector" ).selectmenu( "option" );
Вызов метода:
$( ".selector" ).selectmenu( "option", "disabled", true );
Вызов метода:
$( ".selector" ).selectmenu( "option", { disabled: true } ); Это используется для обновления пользовательского select, чтобы он отражал значение системного select-элемента. Если количество опций в select отличается от количества элементов в пользовательском меню, оно перестроит пользовательское меню.
Вызов метода:
$( ".selector" ).selectmenu( "refresh" );
Это используется для обновления пользовательского select, чтобы он отражал значение системного select-элемента. Если количество опций в select отличается от количества элементов в пользовательском меню, оно перестроит пользовательское меню. Если вы передадите аргумент true, вы можете принудительно вызвать перестройку.
Вызов метода:
$( ".selector" ).selectmenu( "refresh", true );
selectcreate Примечание: Объект ui пустой, но включён для согласованности с другими событиями.
Инициализация selectmenu с указанным обратным вызовом create:
$( ".selector" ).selectmenu({
create: function( event, ui ) {}
}); Связывание обработчика событий с событием selectcreate:
$( ".selector" ).on( "selectcreate", function( event, ui ) {} ); Базовый пример простого нативного select
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>selectmenu demo</title>
<link rel="stylesheet" href="//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="//code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
</head>
<body>
<div data-role="page" id="page1">
<div data-role="header">
<h1>jQuery Mobile Example</h1>
</div>
<div role="main" class="ui-content">
<label for="select-choice-0" class="select">Shipping method:</label>
<select name="select-choice-0" id="select-choice-0">
<option value="standard">Standard: 7 day</option>
<option value="rush">Rush: 3 days</option>
<option value="express">Express: next day</option>
<option value="overnight">Overnight</option>
</select>
</div>
</div>
</body>
</html>
© The jQuery Foundation and other contributors
Licensed under the MIT License.
https://api.jquerymobile.com/selectmenu
|
|