У меня есть несколько слайдеров разного поведения на странице. Один из слайдеров связан с набором радиокнопок. Когда установлен переключатель, значение ползунка должно обновляться. Это работает. Тем не менее, я не могу получить обратное значение work-, когда ползунок перемещается вручную, необходимо проверить переключатель соответствующего значения.
Вот мой JS:
//When radio buttons are changed, update slider - this works
$('[name="[smoker]"]').change(function () {
var value = this.value;
$('#smoker').slider("value", value);
});
//When slider is changed, update radio buttons - this doesn't work. The alert event never fires.
$('#smoker').change(function () {
alert(value)
($('[name="[smoker]"]').attr("value", value)).attr("checked",true);
});
Здесь моя надбавка:
<div class="slider" id="smoker" data-begin="0" data-end="4"></div>
<input type="radio" class="smoker_radio" name="[smoker]" value="0" id="smoker[1]">
<input type="radio" class="smoker_radio" name="[smoker]" value="1" id="smoker[2]">
<input type="radio" class="smoker_radio" name="[smoker]" value="2" id="smoker[3]">
<input type="radio" class="smoker_radio" name="[smoker]" value="3" id="smoker[4]">
<input type="radio" class="smoker_radio" name="[smoker]" value="4" id="smoker[5]">
Пытаться
//When slider is changed, update radio buttons
$('#smoker').on('slidechange', function () {
$('input[name="[smoker]"][value="' + $(this).slider('value') + '"]').prop("checked", true);
});
Демо: скрипка
вы можете сделать:
slide: function (event, ui) {
$(".smoker_radio[value='"+ui.value+"']").attr("checked", true);
//or better use .prop()
$(".smoker_radio[value='"+ui.value+"']").prop("checked", true);
}
Обновленный скрипт