我是一名學生,這是我的JavaScript課的作業分配,我必須使下面的代碼工作,它應該從用戶輸入五個地方並將它們分配給一個數組。然後將它們顯示在頁面上的列表中。當我開始時它不起作用。目前它只需要4個條目,並只顯示列表中的前3個。它應該需要5個條目並顯示5個條目。我試圖改變迭代計數器的if語句,但它仍然只需要4個地方。我懷疑有些東西不合適,或者沒有正確編號。任何幫助將不勝感激!JavaScript幫助,將用戶輸入值分配給一個數組,然後分配給UL
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Hands-on Project 4-3</title>
<link rel="stylesheet" href="styles.css" />
<script src="modernizr.custom.05819.js"></script>
</head>
<body>
<header>
<h1>
Hands-on Project 4-3
</h1>
</header>
<article>
<div id="results">
<p id="resultsExpl"></p>
<ul>
<li id="item1"></li>
<li id="item2"></li>
<li id="item3"></li>
<li id="item4"></li>
<li id="item5"></li>
</ul>
</div>
<form>
<fieldset>
<label for="placeBox" id="placeLabel">
Type the name of a place, then click Submit:
</label>
<input type="text" id="placeBox" />
</fieldset>
<fieldset>
<button type="button" id="button" onclick="processInput()">Submit</button>
</fieldset>
</form>
</article>
<script>
var places = []; // new array to store entered places
var i = 1; // counter variable to track array indexes
// function to add input to array and then generate list after 5th submission
function processInput() {
places[i] = document.getElementById("placeBox").value; // add entered value to array
document.getElementById("placeBox").value = "" // clear text box
if (i < 6) { // iterate counter variable
++i;
}
else { // add entered value to array and write results to document
document.getElementById("resultsExpl").innerHTML = "You entered the following places:";
var listItem = "";
for (j = 1; j < 6; j++) { // write each array element to its corresponding list item
listItem = "item" + j;
document.getElementById(listItem).innerHTML = places[j];
}
}
// add backward compatible event listener to Submit button
var submitButton = document.getElementById("button");
if (submitButton.addEventListener) {
submitButton.addEventListener("click", processInput, false);
} else if (submitButton.attachEvent) {
submitButton.attachEvent("onclick", processInput);
}
}
</script>
</body>
</html>
你需要更具體。我們不會簡單地爲你解決你的作業問題。告訴我們你到目前爲止已經嘗試過什麼,什麼是和沒有工作,以及你看到的任何錯誤。 – jered
@JCD我已經更新了這個問題,我沒有要求你做我的家庭作業,指導問題的方向或問題將是不錯的和讚賞。 – codingYogi