ajax的问题​​调用了Nouislider

时间:2015-07-20 09:50:29

标签: javascript ajax nouislider

我在同一页面上有多个滑块,我将它们初始化为:

$(".percentage-slider").each(function (index, slider) {
    var url = $(this).data('ajax-url');
    var value = $(this).data('value');

    noUiSlider.create(slider, {
        start: value,
        connect: "lower",
        step: 1,
        range: {
            min: 0,
            max: 100
        },
        pips: {
            mode: 'range',
            density: 3
        }
    });

    slider.noUiSlider.on('change', function (values, handle) {
        save(url, {
            'name': 'percentage',
            'value': values[handle]

        });
    });
});

问题是我有一个模式窗口的ajax调用,其中有一堆新的滑块......

Modal.open($('#ajax-modal'), $(this).attr('href'), function () {
                            $(".percentage-slider").each(function (index, slider) {
                                var url = $(this).data('ajax-url');
                                var value = $(this).data('value');

                                $(slider).destroy();
                                noUiSlider.create(slider, {
                                    start: value,
                                    connect: "lower",
                                    behaviour: 'tap',
                                    step: 1,
                                    range: {
                                        min: 0,
                                        max: 100
                                    },
                                    pips: {
                                        mode: 'range',
                                        density: 5
                                    }
                                });

                                slider.noUiSlider.on('change', function (values, handle) {
                                    save(url, {
                                        'name': 'percentage',
                                        'value': values[handle]

                                    });
                                });
                            });
                        });

总是当我调用模态滑块没有出现时,我试图在ajax调用的回调事件中初始化它们,但是我得到了一个错误Slider已经初始化了..在找到这个错误之后我找到了我需要摧毁他们,但我怎么能处理这种情况呢? P.S。:我真的不喜欢在模态上复制和粘贴相同代码的想法......如果有人能有更好的解决方案,我会很感激。

谢谢大家

0 个答案:

没有答案