2017-04-23 2 views
0

私は、配列からランダムな項目を選択し、divにテキストとして表示するこの小さなジェネレータを持っています。しかし何らかの理由で1回だけ機能するので、クリックするたびにテキストを置き換えておく方法を知りたいだけです。このランダムジェネレータを複数回動作させるにはどうすればいいですか?

var items = Array(523,3452,334,31,5346); 
var random = items[Math.floor(Math.random()*items.length)] 

$('#btn').click(function(){ 
    $('#box').text(random); 
}) 

はい、私は吸う。

答えて

3

は単に内のクリック機能をvar randomを置く:)

var items = [523, 3452, 334, 31, 5346]; 
 

 
$('#btn').click(function() { 
 
    var random = items[Math.floor(Math.random() * items.length)]; 
 
    $('#box').text(random); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<button id="btn">PICK RANDOM</button> 
 
<div id="box"></div>

+0

これは素晴らしい働いている、ありがとう!ボタンがクリックされるたびに同じ配列から3つのランダムに選択されたオブジェクトを表示させる方法もありますか? – Joel

+1

@Joelはい、あなたの配列を最初にシャッフルして(Googleに)、 'items = shuffle(items);のような最初の3つのキーを選ぶのではなく、 –

+0

大丈夫、私は今それを見上げるつもりです!$( '#box')。テキスト(アイテム[0] + '' +アイテム[1] + '' +アイテム[2] – Joel

関連する問題