如何在Javascript中单击按钮时获取随机数组元素
我有一个包含大量元素的java脚本数组,点击一个按钮,我想在屏幕上显示任意随机数组元素,我使用了如何在Javascript中单击按钮时获取随机数组元素,javascript,html,arrays,Javascript,Html,Arrays,我有一个包含大量元素的java脚本数组,点击一个按钮,我想在屏幕上显示任意随机数组元素,我使用了Math.random函数,但不确定它为什么不工作。 下面是我的代码 演示 引用 var Loadquotes=函数(){ var quotes=new数组('Stack1'、'Stack2'、'Stack16'、'Stack17'、'Stack13'、'Stack14'、'Stack15'、'Stack6'、'Stack7'、'Stack8'、'Stack9'、'Stack10'); var
Math.random
函数,但不确定它为什么不工作。
下面是我的代码
演示
引用
var Loadquotes=函数(){
var quotes=new数组('Stack1'、'Stack2'、'Stack16'、'Stack17'、'Stack13'、'Stack14'、'Stack15'、'Stack6'、'Stack7'、'Stack8'、'Stack9'、'Stack10');
var i;
对于(i=0;iquotehere
isp
Tagvalue
函数将不起作用使用innerText
或innerHTML
,请查找下面的代码片段
var Loadquotes=function(){
调试器;
var quotes=new数组('Stack1'、'Stack2'、'Stack16'、'Stack17'、'Stack13'、'Stack14'、'Stack15'、'Stack6'、'Stack7'、'Stack8'、'Stack9'、'Stack10');
var i;
对于(i=0;i你可以试试这个
var quotes=Array('Stack1','Stack2','Stack16','Stack17','Stack13','Stack14','Stack15','Stack6','Stack7','Stack8','Stack9','Stack10');
var Loadquotes=函数(){
var newquotes=quotes[Math.floor(Math.random()*quotes.length)];
document.getElementById('quoteShare')。innerHTML=newquotes;
};
引号
试试这个
<html>
<head>
<title>Demo</title>
</head>
<body>
<button id="getquotes" value="Quotes" onclick="Loadquotes()"> Quotes </button>
<p id="quoteshere" ></p>
<script>
function Loadquotes(){
var quotes = new Array('Stack1','Stack2','Stack16','Stack17','Stack13','Stack14','Stack15','Stack6','Stack7','Stack8','Stack9','Stack10');
var newquotes = Math.floor(Math.random() * quotes.length);
document.getElementById('quoteshere').innerHTML = quotes[newquotes];
}
</script>
</body>
演示
引用
函数Loadquotes(){
var quotes=new数组('Stack1'、'Stack2'、'Stack16'、'Stack17'、'Stack13'、'Stack14'、'Stack15'、'Stack6'、'Stack7'、'Stack8'、'Stack9'、'Stack10');
var newquotes=Math.floor(Math.random()*quotes.length);
document.getElementById('quoteShare')。innerHTML=quotes[newquotes];
}
quotes.length
将比项目总数多一个。可能尝试quotes.length-1
?-此外,.value
不是段落元素的有效属性,即使是,for循环也会多次重写该值。@evolutionxbox尝试了它。。但仍然不起作用