简单 HTML 表单创建循环中的永恒循环
Eternal loop in a simple HTML-form-creating loop
我正在尝试制作这个从 JSON 数据中创建 3 个多项选择题的简单代码,出于我无法理解的原因,发生的事情是一个永恒的循环,其中最后一个问题一次又一次地写入页面,直到它崩溃......帮助和建议将不胜感激。
var questions = {
"qestion":["what is bla?", "what is bla bla?", "what is bla bla bla?"],
"answerswer":[["aaa","bbb","ccc","ddd"], ["eee","fff","ggg","hhh"], ["zzz","xxx","yyy","www"]],
"correctAns":[1,2,3]};
String.prototype.format = function() {
var formatted = this;
for (i=0; i< arguments.length; i++) {
var regexp = new RegExp('''{'+i+'''}', 'gi');
formatted = formatted.replace(regexp, arguments[i]);
}
return formatted;
};
function writeQuestions() {
for (i=0 ;i<=2; i++) {
answerRdy = [];
qestionRdy = questions.qestion[i];
answerRdy[0] = questions.answer[i][0];
answerRdy[1] = questions.answer[i][1];
answerRdy[2] = questions.answer[i][2];
answerRdy[3] = questions.answer[i][3];
divID = "question-" + i;
writeAnswer = [];
writeAnswer[writeAnswer.length] = ("'n<div id='{0}'>'n<form method='post' onsubmit='return validate(this);'>'n").format(divID);
writeAnswer[writeAnswer.length] = ("<b>" + qestionRdy + "</b><br />'n");
for (n=0; n<=3; n++) {
writeAnswer[writeAnswer.length] = ("<input type='radio' name='answer' value='{0}' /> {1} <br />'n").format(n, answerRdy[n]);
}
writeAnswer[writeAnswer.length] = ("<input type='submit' value='Submit your answer'>'n</form>'n</div><!--{0}-->").format(divID);
joinQuestion = writeAnswer.join();
exp = /,/gi;
fullQuestion = joinQuestion.replace(exp, "");
$('#container').append(fullQuestion);
}
}
我更改了循环以声明用于迭代的局部变量,并将终止长度链接到适当的对象,这似乎可以解决问题。 例如:
for (i=0 ;i<=2; i++) {
成为:
for (var i = 0, len = questions.answer.length; i < len; i++) {
请参阅示例→
可能是因为你有两个使用未声明的魔术全局变量"i"的 for 循环
for (i=0...
它最有可能在哪里
for (var i=0...
相关文章:
- jQuery:循环一个具有不同超时值的循环
- 在循环中分配json值时,值被覆盖
- 如何在下面的ES6循环中获得前面的文本
- 为什么“;未定义的“;在JavaScript中结束循环
- Javascript循环不会自我更新
- 如何使用jquery处理php循环通过元素
- 而循环只设置php中输入字段中的第一个值
- 循环遍历数组中的特定索引
- Javascript返回值只在循环中返回一次
- 按照选项卡索引的顺序循环一个jQuery选择
- 循环遍历以数组为值的Javascript对象
- 为什么JavaScript在for循环为3时向所有4发出警报
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 循环结束/推送到数组之前在页面上呈现EJS
- 循环比赛位置算法
- jQuery循环在特定位置暂停
- 我的javascript for循环不起作用
- 循环浏览多个身体背景图像
- W3C循环样式的JavaScript
- 简单 HTML 表单创建循环中的永恒循环