gpt4 book ai didi

asp.net - 部分 ASP.NET MVC View 提交

转载 作者:行者123 更新时间:2023-12-01 00:43:20 24 4
gpt4 key购买 nike

我是 ASP.NET MVC 的新手,所以这个问题可能看起来很“愚蠢”,抱歉。

我的主页 View 中有一个局部 View 。

Partial View 提交一个表单,调用 HomeController 中的 Action 方法。

它与服务器验证一起工作正常,问题是发布后只呈现部分 View 。

发布后如何渲染整个主页 View ?

关于代码:

在 PartialView 里面我有一个表单:

<% using (Html.BeginForm("Request", "Home")) { %>

Request 是在我的 HomeController 中定义的 ActionResult。

[HttpPost]
public ActionResult Request(RequestModel model)
{
if (ModelState.IsValid)
{
// Saving data .....
}
else
{
// Show Server Validation Errors
return View();
}
}

此时,post 后,ascx 显示服务器验证错误,但仅渲染 PartialView ascx 代码。发帖后的 Url 如下所示:

http://xxxxxxxxxxx/Home/Request

我想要的是显示整个 Home View ,其中的 ascx 显示服务器验证错误。

最佳答案

尝试使用 jQuery 进行部分提交:

<script type="text/javascript">
$(document).ready(function () {
$("input[type=submit]").live("click", function () {
var f = $("input[type=submit]").parents("form");
var action = f.attr("action");
var serializedForm = f.serialize();
$.ajax({
type: 'POST',
url: action,
data: serializedForm,
success: function (data, textStatus, request) {
if (!data == "") {
// redisplay partial view
$("#formDiv").html(data);
}
else {
// do whatever on sucess
}
}
});
return false;
});
});
</script>

假设你的 view/ascx/HTML 是这样的:

<div id="formDiv">
<% Html.RenderAction("Request"); %>
</div>

关于asp.net - 部分 ASP.NET MVC View 提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4050596/

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