在我的表单数据的jQuery帖子之后,我得到了一个JSON对象。当表单无效时,状态将设置为“error”,并且会在错误确实发生的位置附加消息。
这是我的回复(从Firebug控制台获取)
"status":"error",
"messages":{
"email":{
"emailAddressInvalidFormat":"'asd' is no valid email address in the basic format local-part@hostname"
}
}
表单有效时插入帖子工作正常。现在我使用此代码在表单失败时添加错误消息:
$.each(data.messages, function(element, errors) {
var ul = $("<ul>").attr("class", "errors");
$.each(errors, function(name, message) {
ul.append($("<li>").val(message));
});
$("#" + element).after(ul);
});
我注意到元素和消息很好(用console.log()
检查)。由于(第二个)循环,我认为它出错了,因为在其他地方,这段相似的代码工作正常。我确信html没有插入到DOM中,我也使用Firebug进行了检查。
答案 0 :(得分:4)
val()方法用于设置和检索表单标签中的信息。使用text()方法代替它:
ul.append($("<li>").text(message));