【发布时间】:2019-05-21 07:28:31
【问题描述】:
我正在asp.net mvc创建一个网络应用程序
我有一个部分视图来重置密码,它在引导模式中打开,
现在在 HttpPost 我有一个如下所示的 if 条件
if (string.IsNullOrEmpty(model.NewPassword))
{
TempData["PMessage"] = CustomHelper.Translate("Please Enter new Password");
return PartialView(model);
}
但我的主要网址正在更改为如下所示的部分视图
http://localhost:8080/User/ResetPassword
ResetPassword 是我的局部视图名称
我的部分视图如下所示
@(Html.BeginForm("ResetPassword", "User", FormMethod.Post))
{
<div class="modal-dialog modal-sm">
<!-- Modal data-->
</div>
}
我的完整发帖方法
[HttpPost]
public ActionResult ResetPassword(ResetPasswordModel model)
{
if (string.IsNullOrEmpty(model.NewPassword))
{
TempData["PMessage"] = "Please Enter new Password";
return PartialView(model);
}
//if success
return RedirectToAction("Index");
}
如何防止这种情况,我只想加载模态而不是整个页面,
这里有什么修复方法?
或者我应该去客户端验证吗?
页面流程详解
这就是我的页面的样子
如果用户点击重置密码,会出现下面的引导模式
如果用户单击“确定”而不输入任何数据,则已调用 post 方法并且页面被重定向到 resetpassword.cshtml,因为我正在返回,如下所示
return PartialView(model);
如果我只想刷新控制器上验证的模态/部分视图,我需要做什么
【问题讨论】:
-
又更新了..
-
更新了我的问题希望,它可以帮助您了解我想要做什么
-
我认为您应该阻止提交重置表单。您可以使用 AJAX 请求收集表单数据并发布。请求完成后,您可以使用部分视图内容刷新模式或重定向到索引页面。
标签: asp.net-mvc bootstrap-modal partial-views