2016-02-01 126 views
0

我在学习Javascript,我需要一些帮助。我有一个列表。我试着做一个列表,你可以通过点击一个按钮,从列表中随机取得一首歌,但它似乎不起作用。我的名单在下面,我做错了什么?从列表中选择一个随机项目

<!DOCKTYPE html> 
 
<html> 
 
<head> 
 
</head> 
 
<body> 
 

 
<div> 
 
    <button type="randomSong">Random Music</button> 
 
    <input "randomSong" id="randomSong"> 
 
</div> 
 

 
<script> 
 

 
var song = Array("song1", "song2", "song3", "song4", "song5", "song6"); 
 

 
var randomSong = song[Math.floor(Math.random()*song.length)]; 
 

 
</script> 
 

 
</body> 
 
</html>

+0

注意java!= javascript。我为你修好了。 – kai

+1

什么是'sange'? –

+0

ops,我会解决我的问题之一,秒 –

回答

0

下面的方法显示了如何在JavaScript中获得一个随机项:

<div> 
    <button onclick="findSong();" type="randomSong">Random Music</button> 
    <input "randomSong" id="randomSong"> 
</div> 

<script> 
function findSong() { 
    var song = ["song1", "song2", "song3", "song4", "song5", "song6"]; 

    var random = Math.floor(Math.random() * (song.length - 1)); 

    document.getElementById("randomSong").setAttribute("value", song[random]); 
} 

</script> 

另见本琴: https://jsfiddle.net/Lt1zgLk9/

+0

Shitsu的回答比较准确,请给他加油,因为我没有足够的声望 –

0

你的代码几乎是正确的。这是一个正确的版本:

HTML

<div> 
    <button type="randomSong" onclick="randomSong()">Random Music</button> 
    <input name="randomSong" id="randomSong"> 
</div> 

修改:

  • 添加属性名称的输入(你有"randomSong"没有任何属性键)
  • 使用onclick回调,所以当你点击你的按钮时发生什么事

JS

var song = Array("song1", "song2", "song3", "song4", "song5", "song6"); 

function randomSong() { 
    var randomSong = song[Math.floor(Math.random() * song.length)]; 
    document.getElementById('randomSong').value = randomSong; 
} 

修改:

  • 包住随机码到一个功能(一个由你的按钮的onclick属性引用)
  • 结果分配给输入
相关问题