我正在尝试打印某些动态滑块的值,但是它没有添加到输入中的值:
$(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
答案 0 :(得分:2)
由于您重复使用$newResult
变量,因此需要在closure中保留每个引用:
slide: (function($input) {
return function(event, ui) {
$input.val(ui.value);
};
})($newResult)