jQuery как изменить buttonset
Я новичок в jQuery и думал, что буду использовать его buttonset вместо некоторых переключателей в моем приложении. Документация здесь: http://jqueryui.com/demos/button/#radio
Как добавить обработчик к событию, когда набор кнопок изменяет значение?
вот фрагмент кода, который я пробовал:
$('input.tod_quant').change(function() {
alert('TEST');
});
а затем позже в HTML:
<span id="tod_quant" class="buttonset">
<input type="radio" id="tod_quant5" name="tod_quant" value="5" /><label for="tod_quant5">5-Minute</label>
<input type="radio" id="tod_quant60" name="tod_quant" checked="checked" value="60" /><label for="tod_quant60">60-Minute</label>
</span>
событие "изменение" никогда не срабатывает. Есть ли вообще событие изменения? Как может Я делаю это? Кроме того, есть ли какая-либо документация с примером? http://jqueryui.com имеет множество примеров,и ни один из них, который я могу найти, не показывает никаких событий. Полагаю, мое незнание jQuery не совсем помогает ситуации.
любая помощь была бы весьма признательна. Спасибо.
4 ответов
нет change
событие для кнопок в jQuery-UI.
вы должны прослушать изменение или щелкнуть событие базовых радиокнопок:
ха! Проблема решена. Я взламывал это весь день, и это было прямо передо мной.
Мне просто нужно было изменить, как я выбирал элемент для этого:
$('#tod_quant')
У меня была эта проблема, и я решил это, как показано ниже: Я создал обработчик событий для меток:
$('.label-class').click(LabelClicked);
$('.input-class').change(InputChanged);
function LabelClicked() {
var input = $('#' + $(this).attr('for'));
if(input)
input.trigger('change');
return true;
}
function InputChanged() {
//do your work with this event
}
нет другого пути! Я попробовал несколько способов и, наконец, решил сделать это
<script>
$(function() {
$( "#radio" ).buttonset();
});
</script>
<div class="demo">
<form>
<div id="radio">
<input type="radio" id="radio1" name="radio" /><label for="radio1">Choice 1</label>
<input type="radio" id="radio2" name="radio" checked="checked" /><label for="radio2">Choice 2</label>
<input type="radio" id="radio3" name="radio" /><label for="radio3">Choice 3</label>
</div>
</form>
используйте этот код и проверьте, включаете ли вы jquery.js и jqueryui.файлы js или нет.