我目前正在嘗試在每次單擊按鈕后使用 javascript 獲取一個陣列以在我的 HTML 中顯示不同的元素。我正在使用 for 回圈來表示陣列中的專案。我在讓任何內容顯示在 html 中時遇到了很多麻煩。我對這一切都很陌生,所以任何幫助將不勝感激。
const activityButton = document.getElementById("activityButton");
const activityBox = document.getElementById("activitiesBox");
for (let i = 0, i < activitiesArray.length, i ) {
activityButton.onclick = function(){
activityBox. innerHTML =
`
<p>ACTIVITY: ${activitiesArray[i].activity}</p>
<p>ENERGY NEEDED: ${activitiesArray[i].energy}</p>
<p>MONEY NEEDED: ${activitiesArray[i].money}</p>
`;
};
}
uj5u.com熱心網友回復:
onclick 僅在單擊按鈕時呼叫,因此您無需將其放入 for 回圈中,嘗試在單擊時執行 for 如下:
const activityButton = document.getElementById("activityButton");
const activityBox = document.getElementById("activitiesBox");
activityButton.onclick = function(){
for (let i = 0, i < activitiesArray.length, i ) {
activityBox.innerHTML =
`
<p>ACTIVITY: ${activitiesArray[i].activity}</p>
<p>ENERGY NEEDED: ${activitiesArray[i].energy}</p>
<p>MONEY NEEDED: ${activitiesArray[i].money}</p>
`;
}
};
uj5u.com熱心網友回復:
試著把 =
活動框。內部HTML =
<p>ACTIVITY: ${activitiesArray[i].activity}</p> <p>ENERGY NEEDED: ${activitiesArray[i].energy}</p> <p>MONEY NEEDED: ${activitiesArray[i].money}</p>;
uj5u.com熱心網友回復:
理想情況下,回圈應該在 onclick 事件偵聽器函式內運行。最好先創建元素,然后將其附加到 DOM 元素中。
const activityButton = document.getElementById("activityButton");
activityButton.onclick = function(){
const activityBox = document.getElementById("activitiesBox");
activityBox.innerHTML = "";
for (let i = 0, i < activitiesArray.length, i ) {
var p1 = document.createElement("p");
p1.innerHTML = ACTIVITY: ${activitiesArray[i].activity};
var p2 = document.createElement("p");
p2.innerHTML = ENERGY NEEDED: ${activitiesArray[i].energy}
var p3 = document.createElement("p");
p3.innerHTML = MONEY NEEDED: ${activitiesArray[i].money}
activityBox.append(p1);
activityBox.append(p2);
activityBox.append(p3);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/359955.html
標籤:javascript
上一篇:用可變結構替換嵌套物件的值
