有人可以提供一个非常简单的示例,说明如何以羊驼毛形式显示服务器端验证消息吗?
例如如果http://www.alpacajs.org/demos/bootstrap/simple/simple1.html处的简单表单是随ajax请求提交的,并且服务器返回以下(或类似的)验证消息,我该如何显示消息:
{
"success":false,
"errors": [
{
"field": "first",
"message": "first name must be unique"
},
{ "field": "last",
"message": "last name must be unique"
}]
}
我阅读了这些问题,但不幸的是我无法解决该问题。
答案 0 :(得分:0)
我终于想出了一个简单的jQuery DOM操作解决方案:
"submit": {
"title": "Send Form Data",
"click": function(e) {
var errorDiv = '<div class="help-block alpaca-message" style="color: #a94442;"><i class="glyphicon glyphicon-exclamation-sign"></i> ';
var promise = this.ajaxSubmit();
promise.done(function(sdata) {
if (sdata.success == true) {
window.location.href ="/user/occasion";
return true;
}
$.each(sdata.errors, function(field, message) {
aField = $('[data-alpaca-field-name="' + field + '"]');
if (aField.length === 0)
return true;
aField.addClass('has-error');
aField.after(errorDiv + message + "</div>");
});
});
promise.fail(function(sdata) {
var message = 'Server error!</br>' + sdata.responseText;
$('.alpaca-container').after(errorDiv + message + "</div>");
});
}
}