1 回答

TA貢獻2041條經驗 獲得超4個贊
每次分配給時都會覆蓋該元素innerHTML,而不是附加到它。您不能像使用 DOM 方法那樣逐步構建 HTML,因為每次分配給innerHTML它時都會將其解析為完整的 HTML 片段。
innerHTML您應該改為附加到一個字符串,并在末尾分配給。
function print() {
// console.log("?")
var time = Number(localStorage.getItem("time"))
// console.log(typeof time)
var nClass = Number(localStorage.getItem("nClass"))
var duration = localStorage.getItem("duration")
var subjectsRaw = localStorage.getItem("arr")
var subjects = JSON.parse(subjectsRaw)
var html = "<table border = 1>"
for (var i = 0; i < 5; i++) {
console.log('test')
html += "<tr>"
for (let j = 0; j < nClass; j++) {
console.log('test2')
html += '<td>' + subjects[Math.floor(Math.random() * subjects.length + 0)] + '</td>'
}
html += "</tr>"
}
html += "</table>"
document.getElementById("tt").innerHTML = html;
}
添加回答
舉報