动态滑块值不工作(ui.value)



我试图打印一些动态滑块的值,但值它没有添加到输入:

$(document).ready(function () {
    var N = 10;
    var initVal = 1;
    for (var id = 1; id <= N; id++) {
        var $newResult = $('<input/>', {
            type: 'text',
            id: 'result-' + id,
            class: 'sliderText',
            value: initVal
        });
        var $newSlider = $("<div/>", {
            id: 'slider-' + id,
            class: 'ui-slider'
        }).slider({
            range: 'min',
            min: initVal,
            max: N,
            value: initVal,
            step: 1,
            slide: function(event, ui) {
                $newResult.val(ui.value);  // neither works $( '#result-' + id )
            }
        });
        var $container = $("<div/>", {
            id: 'sliderContainer-' + id
        }).append($newResult).append($newSlider);
        $("#showSldr").append($container);
    }
});

似乎有些东西我没有看到,也许有人看到了:p

http://jsfiddle.net/fjs1pLv2/

由于要重用$newResult变量,因此需要在闭包中保留每个引用:

  slide: (function($input) {
     return function(event, ui) {
         $input.val(ui.value);
     };
  })($newResult)

http://jsfiddle.net/fjs1pLv2/2/

最新更新