Когда я создаю элемент JQuery UI (кнопки, например), я делаю это так:Установить параметры в атрибуте элемента?
<button class="Button" data-options='{ "text": false, "icons": { "primary": "ui-icon-arrowthick-1-n" } }'>Move Up</Button>
У меня есть некоторые JS, который ищет что-нибудь, что является .Button
и извлекает атрибут data-options
как JSON, а затем создает кнопка, передающая параметры.
Мне интересно, имеет ли пользовательский интерфейс jQuery встроенную функцию для этого? Например, я хотел бы, чтобы иметь возможность установить параметры на кнопках в пределах Buttonset, поставив параметры в атрибуте на каждой кнопке ребенка:
<div class="Buttonset">
<input type="radio" id="SortDirection_Ascending" name="SortDirection" value="Ascending" />
<label for="SortDirection_Ascending" title="Ascending" data-options='{ "text": false, "icons": { "primary": "ui-icon-arrowthick-1-n" } }'> </label>
<input type="radio" id="SortDirection_Descending" name="SortDirection" value="Descending" />
<label for="SortDirection_Descending" title="Descending" data-options='{ "text": false, "icons": { "primary": "ui-icon-arrowthick-1-s" } }'> </label>
</div>
Но JQuery не знает, чтобы применить параметры. Я мог бы сделать это в JS, как с кнопками (и другими виджетами). Но мне любопытно, если это уже поддерживается с другим атрибутом.
Для уточнения:
Когда я создаю виджет, я хочу знать, если JQuery может автоматически извлекать параметры виджета из атрибута элемента и применить их к виджету.
<button class="Button" data-options='{ "text": false, "icons": { "primary": "ui-icon-arrowthick-1-n" } }'>Move Up</Button>
<script type="text/javascript">
$(".Button").button();
/* jQuery saw that this element has a "data-options" attribute and automatically
* extracted the options from this attribute and applied them to the widget. */
</script>
Все еще ваш вопрос непонятен. Да, вы сможете получить к ним доступ, как JSON. :) –
Ваши заметки «У меня есть JS, который ищет что-нибудь, что есть .Button» и «Я не могу сделать это для Buttonset», кажется противоречивым. Можете ли вы объяснить, почему вы не можете сделать это для div? –
Я хочу знать, есть ли определенное имя атрибута, который я могу использовать, который jQuery проверяет и применяет параметры, содержащиеся внутри. –