首页 > 解决方案 > 如何使用 javascript 数组和按钮将响应放入 html 表单中以在表单字段中获取响应

问题描述

我有一个 js 数组,我想在按下按钮(命名歌曲)时将一首随机歌曲记录到 HTML 表单中。我可以将它登录到控制台,但我不知道如何使用 document.getElementById(我是 JS 新手,所以请多多包涵)。我很感激任何帮助。

JavaScript:

var i = Math.floor(Math.random() * 10) + 1;
function randSong() {
var listOfSongs = ['Killomanjaro','No Sad No Bad','Doomsday','Solitaire',
'Distance','Roll In Peace','Bank Account','SAD!','Moonlight','Swimming Pools'];
console.log('Alexa, play',listOfSongs[i]);
}
randSong();

HTML:

<form>
      Random Song:<input type="text" id="RandSong" name="song"/>
      <input type="button" value="Song" onclick="randSong()"/>
    </form>

标签: javascripthtmlarraysforms

解决方案


var i = Math.floor(Math.random() * 10);
function randSong() {
var listOfSongs = ['Killomanjaro','No Sad No Bad','Doomsday','Solitaire',
'Distance','Roll In Peace','Bank Account','SAD!','Moonlight','Swimming Pools'];
console.log('Alexa, play',listOfSongs[i]);
document.getElementById('RandSong').value = listOfSongs[i];
}
randSong();

这应该这样做。此外,在设置 i 的值时去掉 +1。Math.random 将返回 0 到 1 之间。数组从 0 开始,因此您编写它的方式可能会导致 10 超出范围。


推荐阅读