我想要在1-18範圍內生成15個隨機數併爲它們賦值。這是我的代碼。問題是,當我按下按鈕時,Javascript顯示的文本是我給出的列表中的15個隨機項目,這正是我想要的,然而,這些項目取代了「Scramble」按鈕。我希望按鈕保持不變,以便可以在不重新加載頁面的情況下生成另一個隨機列表。將值分配給javascript中的多個隨機數
<!DOCTYPE html>
<html>
<head>
<title>text/javascript</title>
<script language="javascript">
function myFunction() {
document.getElementById('Scramble');
for (var i = 0; i < 15; i++) {
var x = Math.floor((Math.random()*18)+1)
if (x === 1) {
document.write("R ")
};
if (x === 2) {
document.write("R' ")
};
if (x === 3) {
document.write("R2 ")
};
if (x === 4) {
document.write("L ")
};
if (x === 5) {
document.write("L' ")
};
if (x === 6) {
document.write("L2 ")
};
if (x === 7) {
document.write("F ")
};
if (x === 8) {
document.write("F' ")
};
if (x === 9) {
document.write("F2 ")
};
if (x === 10) {
document.write("B ")
};
if (x === 11) {
document.write("B' ")
};
if (x === 12) {
document.write("B2 ")
};
if (x === 13) {
document.write("U ")
};
if (x === 14) {
document.write("U' ")
};
if (x === 15) {
document.write("U2 ")
};
if (x === 16) {
document.write("D ")
};
if (x === 17) {
document.write("D' ")
};
if (x === 18) {
document.write("D2 ")
};
};
};
</script>
</head>
<body>
<button onclick="myFunction()">Scramble</button>
<p id="Scramble"></p>
</body>
</html>
問題的根源是其實你正在使用['document.write'](http://stackoverflow.com/a/802943/791010)。 –
然後直接調用'document.write(arr [x])''''''var arr = [「R」,「R'」,「R2」,...]''''。請注意,有了這個,你需要從你的'x'變量賦值中去掉'+ 1'。 –