非常简单。这是我效率很低的代码:
var slider1 = new Slider("#survey1", {
precision: 2,
value: 5
})
var slider2 = new Slider("#survey2", {
precision: 2,
value: 5
})
var slider3 = new Slider("#survey3", {
precision: 2,
value: 5
})
var slider4 = new Slider("#survey4", {
precision: 2,
value: 5
})
var slider5 = new Slider("#survey5", {
precision: 2,
value: 5
})
我确信这可以更有效率地进行,它应该是“#survey13”但我跳过其余的以节省空间。也许是for循环?我怎样才能将计数器添加到变量的名称和引用的id?
答案 0 :(得分:9)
你可以说像吼叫
var sliders = []
for (var i = 1; i <= 13; i++) {
var slider = new Slider("#survey" + i, {
precision: 2,
value: 5
});
sliders.push(slider);
}
实际上,您的slider1
为sliders[0]
且slider2
为sliders[1]
,依此类推。
答案 1 :(得分:2)
尝试使用数组:
var sliders = [];
var cfg = {
precision: 2,
value: 5
};
for (var i = 1; 13 >= i; i++)
sliders[i] = new Slider("#survey" + i, cfg);
如果您希望拥有命名变量,请转到对象:
var sliders = {};
var cfg = {
precision: 2,
value: 5
};
for (var i = 1; 13 >= i; i++)
sliders['survey' + i] = new Slider("#survey" + i, cfg);
答案 2 :(得分:0)
您无法更改引用的ID,但您可以在加载页面之前使用php创建它
<?php
$i=0;
for($i;$i<n;$i++)
{
echo 'var slider = new Slider("#survey'+$i+'", {
precision: 2,
value: 5
})';}
?>