gpt4 book ai didi

jquery - Controller 可以根据结果返回 JSON 或 HTML

转载 作者:行者123 更新时间:2023-12-03 22:32:42 25 4
gpt4 key购买 nike

假设我有一个包含表单的弹出窗口。我必须有一个处理表单的 Controller ,并且根据结果,该 Controller 返回 JSON(如果一切顺利,并且弹出窗口可以通过 javascript 关闭)或 HTML(如果表单数据无效并且必须替换表单)使用新的 html - 包含验证错误消息)。所以我找到了这样一个解决方案:那就是形式:

<form id="message" ...>
...
</form>

我有这个表单的 jquery 处理程序:

$(document).on("submit", "form#message", function (evt) {
evt.preventDefault();
$.ajax({
type: this.method,
url: this.action,
data: $(this).serialize(),
success: function (result) {
if ($.isPlainObject(result)) {
// this is JSON
// close the pop-up window
} else {
// this is HTML
$("form#message").html(result);
}
}
});
});

Controller :

[HttpPost]
public ActionResult UpdateMessage(MessageModel model)
{
...
if (.. is valided ..)
return Json(new { success = "OK" });
else
return View(model);
}

问题 - 对于此类任务是否有更优雅的解决方案?

最佳答案

恕我直言,这是解决这个问题的一个非常好的解决方案,我肯定会使用它。

关于jquery - Controller 可以根据结果返回 JSON 或 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16663373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com