Возвращаемое значение Javascript Function Slider - PullRequest
0 голосов
/ 23 декабря 2011

В настоящее время у меня есть ползунок включения / выключения в стиле iOS, и я хотел бы вернуть его значение, которое равно 1 или 0, в скрытое поле HTML.

JavaScript выглядит следующим образом:

    $(document).ready(function(){
        initCheckBoxes();
    });

    var slideSpeed = 150;
    var leftDist = 42;

    function initCheckBoxes()
    {
        $( ".cb-slider" ).draggable({containment: "parent"});
        $(".cb-slider").mouseup(function(){

            var status = $(this).attr("cb-status");

            switch(status)
            {
            case "0":
                //its off, slide it by 41px;
                $(this).animate({left: leftDist}, slideSpeed);
                //change status to 1
                $(this).attr("cb-status", "1");

            break;

            case "1":
                //its on, slide it to 0px;
                $(this).animate({left: "0"}, slideSpeed);
                //change status to 0
                $(this).attr("cb-status", "0");

            break;
            }
    });


}

И значение, которое меня интересует, это var status.

Я просто не могу понять, как вернуть это значение.

Ответы [ 2 ]

0 голосов
/ 23 декабря 2011

Ваша функция применяется ко всем элементам с помощью селектора $(".cb-slider").Вы уверены, что хотите сохранить выбранное значение последнего измененного ползунка в общей папке?

Я предполагаю, что вы хотите получить доступ к значениям на стороне сервера ползунков при отправке формы.Если это так, вам понадобится уникальная идентификация ваших ползунков, чтобы отделить их друг от друга и узнать, какой из них какой.

ОБНОВЛЕНИЕ

Созданопример плагина в jsFiddle , проверьте его.

0 голосов
/ 23 декабря 2011

Мне кажется, что вы не хотите «возвращать» значение, а должны изменить значение скрытого поля.Добавьте это к событию mouseup:

$( '#hidden' ).val( status );

, где #hidden - селектор для скрытого поля ввода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...