-1
我無法在我的代碼中找到錯誤,每當我嘗試運行它時,onclick都會返回一個錯誤「loopNums未定義」。用戶只能輸入1到15之間的數字,循環會在用戶輸入和100之間生成10個隨機數,以確定哪些數字可以被整除。Javascript隨機數循環未定義onclick
<html>
<head>
<title></title>
<script type="text/javscript">
function loopNums() {
var usernum = parseInt(document.getElementById("usernum").value);
var msg = "";
var sum = 0;
if (usernum < 1 || usernum > 15) {
msg = "Enter a number between 1 and 15";
} else {
for (var i = 0; i < 10; i++) {
var rdnNumber = Math.floor(Math.random() * (1 + 100 - usernum)) + usernum;
if (rdnNumber % usernum === 0)
msg += "<div style='color: green'>Number generated: " + rdnNumber + ". It is divisible by " + usernum + "!</div>";
else
msg += "<div style='color: red'>Number generated: " + rdnNumber + ". It is not divisible by " + usernum + "!</div>";
}
}
document.getElementById("results").innerHTML = msg;
}
</script>
<style type="text/css">
body {
background-color: #996666;
font-family: arial;
color: #996666;
}
#contentwrap {
background-color: #FFCC66;
border: 8px #FF9933 solid;
padding: 20px;
width: 600px;
margin: 20px auto 0px auto;
border-radius: 25px;
text-align: center;
}
#heading {
font-size: 2.2em;
border-bottom: 6px #663399 double;
padding: 10px 0px 10px 0px;
}
#formdiv {
text-align: center;
padding-top: 25px;
}
.formtext {
text-align: center;
font-size: 1.29em;
margin-top: 20px;
}
#usernum {
border: 2px #663399 solid;
}
#result {
font-size: 1em;
color: #FF0000;
}
</style>
</head>
<body>
<div id="contentwrap">
<div id="heading">Loop Practice</div>
<div id="formdiv">
<form>Enter a number
<br />
<input type="text" id="usernum" />
<p />
<input type="button" value="Go For It!" onClick="loopNums()" />
</form>
<div id="results"></div>
</div>
</div>
<!-- ends div#contentwrap -->
</body>
</html>
雖然這是一個錯誤,修復這將不會產生正確的功能。所以這不是「真正的問題」。問題是onclick方法沒有正確引用該函數。 – Zac 2014-10-27 18:56:50
我測試了Chrome中的代碼,它的工作原理。這是非常標準的js:http://www.w3schools.com/jsref/event_onclick.asp。我非常確定@Zeb解決方案也可以工作,但只有當您修復我提到的錯字時---) – 2014-10-27 19:12:55
@Zeb這是正確的答案。 – brso05 2014-10-27 19:37:44