将随机数插入类中

时间:2012-07-22 20:10:12

标签: javascript jquery random

如果我这样做:

$('.classname').html(Math.floor(Math.random()*10)+1);

所有“classname”都填充相同的数字。 是否可以使用不同的随机数填充“classname”的每个实例?

我能想到解决这个问题的唯一可行方法是遍历“类名”的每个实例并逐个应用随机数。

5 个答案:

答案 0 :(得分:6)

.html()

$(".classname").html(function(idx, oldValue) {
    return (Math.floor(Math.random()*10)+1);
});

fiddle

答案 1 :(得分:4)

html方法有一个接受函数的“重载”。该函数应返回值以将内部html设置为。在你的情况下,你可以这样做:

$(".classname").html(function() {
    return (Math.floor(Math.random()*10)+1);
});

该函数实际上是用两个参数调用的。第一个是选择中元素的索引,第二个是元素内部html的当前值

答案 2 :(得分:2)

您可以使用jQuery的.each()函数迭代与您提供的选择器匹配的每个元素 -

$.each('.classname',function(index,elem){
  var newRandomNumber = (Math.random()*10)+1;
  $(elem).html(Math.floor(newRandomNumber));
});

对于each()函数的每次迭代,您将拥有所在元素的index以及elem参数中的元素本身。


http://api.jquery.com/jQuery.each/

答案 3 :(得分:1)

试试这个

$('.classname').each(function(index) {
    $(this).html(Math.floor(Math.random()*10)+1);
});

答案 4 :(得分:0)

是。最简单的方法是使用jQuery each函数:

$('.classname').each(function() {
    $(this).html(Math.floor(Math.random()*10)+1);
});