Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Изменение radio\li ползунком (https://javascript.ru/forum/dom-window/45869-izmenenie-radio%5Cli-polzunkom.html)

рони 26.03.2014 22:06

Цитата:

Сообщение от cript
Что здесь не так сделал?

а что оно не так?
кроме того что добавлен var и закоментировано бесполезное
$(function () {
    var rd = $(".output input:radio");
    $("#slider-vertical").slider({
        animate: true,
        orientation: "vertical",
        range: "min",
        min: 0,
        max: 12,
        value: 1,
        slide: function (event, ui) {
            $("#rangevalue").html(rd.eq(ui.value).val());
            rd.eq(ui.value).prop("checked", true)
        }
    });
    //$("#rangevalue").html($("#slider-vertical").slider("value"));
    $("#rangevalue").click(function () {
        var value = $(":radio[name=Button]").filter(":checked").data("value");
        value && push_action(value)
    })
    $("#rangevalue").html(rd.eq($("#slider-vertical").slider("value")).val());
})

cript 26.03.2014 22:18

Теперь по умолчанию стоит нужное значение однако оно остается неактивным, то есть чтобы action сработал нужно все ровно сначала передвинуть ползунок ..
Даже если поставить на кнопку отдельно действие, то есть onclick="action(...)", то оно не будет задействовано.. Почему так?

рони 26.03.2014 22:22

cript,
а почему что-то должно работать само?

cript 26.03.2014 22:33

Цитата:

Сообщение от рони
а почему что-то должно работать само?

имеется ввиду после нажатия (клика) на кнопку

рони 26.03.2014 22:33

Цитата:

Сообщение от cript
однако оно остается неактивным

так сделайте активным
Цитата:

Сообщение от cript
чтобы action сработал

просто запустите action(...) если он вам так нужен

рони 26.03.2014 22:35

Цитата:

Сообщение от cript
имеется ввиду после нажатия (клика) на кнопку

а где данные для срабатывания?

cript 26.03.2014 22:43

Смотрите вот примерный код

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/mint-choc/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<div class="output" style="display:none;">
<input type="radio" name="Button" value="Поднять1" data-value="test1">
<input type="radio" name="Button" value="Поднять2" data-value="test2">
<input type="radio" name="Button" value="Поднять3" data-value="test3">
</div>
<script type="text/javascript">
$(function () { rd = $(".output input:radio"); $("#slider-vertical").slider({ animate: true, orientation: "vertical", range: "min", min: 0, max: 3, value: 1, slide: function(event, ui) { $("#rangevalue").html(rd.eq(ui.value).val()); rd.eq(ui.value).prop("checked", true) } }); $("#rangevalue").html(rd.eq($("#slider-vertical").slider("value")).val()); $("#rangevalue").click(function() { var value = $(":radio[name=Button]").filter(":checked").data("value"); value && alert(value) }) 
})
</script>
<button id="rangevalue" name="Button" class="betbuttons"></button>
<div id="slider-vertical" style="height:200px;" class="slider"></div>


Как мы видим при появлении если нажать на кнопку ничего не произойдет, но если передвинуть ползунок в любую сторону, а потом обратно и нажать на кнопку то действие будет выполнено, вот интересно почему так..?

рони 26.03.2014 23:05

cript,
вы специально скрипты сжимаите, чтоб не только вас непонять было но и ваш код?если по кнопке никто не кликает и програмно некликает, какого чёрта функция повешанная на клик сработает .

во вторых вы хоть в код вглядитесь -- .filter(":checked") - ищем отмеченный -- его кто-то при загрузке отметил? - и в клике у вас что ? в алерте -- где кавычки
onclick="alert('test')

cript 26.03.2014 23:26

Цитата:

Сообщение от рони
его кто-то при загрузке отметил?

Я понял, тогда такой вопрос можно ли как то сделать так, чтобы выбранная по умолчанию кнопка всегда была checked?

рони 26.03.2014 23:31

cript,
да http://htmlbook.ru/html/input/checked


Часовой пояс GMT +3, время: 13:54.