我正在尝试实现它以在对话框表单上显示消息,并询问并回答here。但是,虽然上面的示例在代码中使用了默认的editGridRow,但我通过JSON加载了自定义对话框表单。例如,返回的JSON错误/验证消息可能是:
{"CustomerName":{"isEmpty":"\u201cthis value is - not to be left empty.\u201d"}}
我需要能够将它们输出为“客户名称 - 此值不能为空” - 位于对话框表格的顶部。
我已尝试过A,B,C和D中的解决方案,但我还无法自定义它们以适应我的方案。
我有一个像这样的函数调用:
function LaunchEditForm(dialog)
{
$('form', dialog).submit(function ()
{
$.ajax({
url: '/customer/update-customer/',
type: this.method,
reloadAfterSubmit: true,
data: $(this).serialize(),
success: function (result)
{
if (result.success)
{
console.log(result);
//can I call a function here to prepend modal form
//with success message? how please?
}
else
{
console.log(result);
// can I prepend the dialog to show model errors here?
//var errorDetail = jQuery.parseJSON(result.responseText);
}
}
});
return false;
});
}
我尝试过使用 afterSubmit 之后:
afterSubmit: function (response, postdata)
{
if (response.responseText == "Success")
{
jQuery("#success").show();
jQuery("#success").html("Customer successfully updated");
jQuery("#success").fadeOut(6000);
return [true, response.responseText]
}
else
{
return [false, response.responseText]
}
}
这还没有奏效 - 也许我把它放在了不同的范围
并尝试 errorTextFormat ,如下所示:
errorTextFormat: function (data)
{
if (data.responseText.substr(0, 6) == "<html ")
{
return jQuery(data.responseText).html();
}
else
{
return "Status: '" + data.statusText + "'. Error code: " + data.status;
}
}
请帮助解决这个问题。我知道我需要一些能够成功解析JSON的函数,并希望能够呈现错误和消息Oleg described