我有一个jQuery表单,如果用户没有使用此代码正确填写表单,则会显示一条消息:
if (errorList.length > 0) {
permitted = false;
//Display error message
$("#" + stepName + " legend").after("<div id=\"errorList\" class=\"error\"><h3>Please correct the following </h3><ul></ul></div>");
for (var j = 0; j < errorList.length; j++) {
if (errorList[j] != undefined)
$("#errorList ul").append("<li>" + errorList[j] + "</li>");
}
}
问题在于,当用户尝试多次提交表单时出现错误,会发生以下情况:
如何解决这个问题?
答案 0 :(得分:3)
在迭代前添加.empty
..
$("#errorList ul").empty();
for(var j = 0; j < errorList.length; j++) {
if (errorList[j] != undefined)
$("#errorList ul").append("<li>" + errorList[j] + "</li>");
}
答案 1 :(得分:2)
尝试:
if (errorList.length > 0) {
permitted = false;
//Display error message
$("#" + stepName + " legend").after("<div id=\"errorList\" class=\"error\"><h3>Please correct the following </h3><ul></ul></div>");
$("#errorList ul").empty(); // THIS FIXES IT
for (var j = 0; j < errorList.length; j++) {
if (errorList[j] != undefined)
$("#errorList ul").append("<li>" + errorList[j] + "</li>");
}
}