我想通過一個數字提示用戶輸入:integer,大於0,並且是數字。我做了while while while循環,似乎工作正常。有了這個數字,我必須將它傳遞給名爲「genTable」的函數,並根據用戶輸入的內容創建一個具有動態行數的表格。然而,用我目前的代碼,我似乎無法讓表格出現在頁面上。關於我出錯的地方以及如何解決它的任何想法?JavaScript。基於用戶輸入創建一個動態表
<!DOCTYPE HTML>
<html>
<head>
<title>jsLoopDemo</title>
<!--
Honor Code: I acknowledge that this code represents my own work: CC
Date: July 6, 2017
-->
<meta charset="utf-8" />
<meta name="description" content="Create a chart with rows based on a number
user chose." />
<meta name="keywords" content="loop, row, dynamic" />
<meta name="author" content="" />
<script type="text/javascript">
do{
var numChose = prompt("Please enter an interger greater than zero.");
}while (isNaN(numChose) || numChose % 1 !== 0 || numChose < 1);
function genTable(numChose)
{
var table = document.createElement("TABLE");
var tableBody = document.createElement("TBODY");
table.appendChild(tableBody);
var myTableDiv = document.getElementById("mytable");
for (var r = 0; r <= numChose; r++)
{
var tr = document.createElement("TR");
tableBody.appendChild(tr);
var td = document.createElement("TD");
tr.appendChild(td);
td.appendChild(document.createTextNode("Row " + r));
}
myTableDiv.appendChild(table);
}
</script>
</head>
<body>
<div id="mytable">
</div>
</body>
</html>
這工作很好,但是,我會很感激爲什麼我需要做genTable(numChose)的一些推理;如果它在函數的下一行。有什麼不同? – CChristiansen
寫'function genTable(numChose)'只_defines_一個名爲'genTable'的函數帶有一個參數numChose,但不調用它,你仍然需要這樣做。一個函數通常用於重用代碼,因爲它可以被重複調用。如果這只是在你的代碼中只發生一次,你也可以廢棄這個函數(只是使用函數中的代碼),它就會起作用。 – mvuajua