我有这个javascript代码,
function saveQ(){
var title = document.getElementById('title').value;
for(var s = 1; s < qs.length;s++){
var ques = document.getElementById("eq"+qs[s]).value;
localStorage.setItem(title+"_e"+qs[s],ques);
}
var existingEntries = localStorage.getItem("Tests");
var existingEntries2 = JSON.parse(existingEntries);
existingEntries2.push(title);
localStorage.setItem("Tests", JSON.stringify(existingEntries2));
listTest();
}
function listTest(){
var t = localStorage.getItem("Tests");
var tests2 = JSON.parse(t);
var dropdown = document.getElementById('list');
while (dropdown.firstChild) {
dropdown.removeChild(dropdown.firstChild);
}
for(var i=0;i<tests2.length;i++){
var o = document.createElement("option");
o.value = tests[i];
o.text = tests[i];
dropdown.appendChild(o);
}
}
如果单击保存按钮,将调用saveQ函数。 那么localStorage必须是,
"["Blank Test","Personality Test","Basic Test","Sample Test"]"
然后下拉列表将被更改。 问题是为什么在下拉列表中,它是&#34;未定义&#34;?
答案 0 :(得分:0)
这只是一个容易犯错误的问题。
在for
的{{1}}循环中,您指的是listTest()
而不是tests[i]
。