我在之前定義了一個函數,使用for循環,算出1-10的相加的和并輸出到文本框中。接著又想使用while循環,算出1-10相加中每一步的和,顯示在網頁中。但是當我出入第二個函數之后,再運行,不僅第二個函數的觸發按鈕在點擊后沒有反映,就連之前能夠運行的第一個函數的觸發按鈕也算不出來值了。這是怎么回事?<style?type="text/css">
h1{font-family:隸書;text-align:center}
h2{font-family:隸書;text-align:center}
p{font-family:宋體;font-size:18px;text-align:center;}
</style>
</head>
<body>
<script?language="javascript"?type="text/javascript">
function?a(){
????var?sum=0;
????for(var?i=1;i<=10;i++)
????{
????????sum=sum+i;
????}
????document.getElementById("sum").value=sum;
????}
function?b(){
var?i=1;sum=0;
while(i<=10)
{
sum=sum+i;
document.write("sum");
}
</script>
<h1>求1-10的和</h1>
<p>1-10的和等于:<input?type="text"?name="sum"?id="sum"/><br?/><br?/>
<input?type="button"?name="運行"?value="運行"?onclick="a()"/></p><br?/><br?/><br?/>
<h2>1-10相加的分解之每步所得之和</h2>
<p><input?type="button"?name="運行分解"?value="運行分解"?onclick="b()"?/></p>
</body>
</html>
2 回答
已采納

慕男嬸
TA貢獻98條經驗 獲得超73個贊
你的b函數寫錯了。。
錯在3個地方:
1、函數少寫了一個 }。
2、循環是死循環。應該在while內部最后一行 寫上 i++ 。
3、你使用document.writ來輸出結果的話,是會清空body中所有內容的。并且由于程序執行很塊,你也看不到每步的結果。
點擊展開后面2條
添加回答
舉報
0/150
提交
取消