【问题标题】:table division text dissapears after validation is run on submit提交时运行验证后,表格划分文本消失
【发布时间】:2016-01-11 20:09:12
【问题描述】:

在我的 razor 页面中,我有几个复选框排列在一个表格中。我还有一些其他需要输入的 @Html.EditorFor 元素。当我提交并运行验证时,页面会刷新并显示 eoor 消息,并且表格中我的复选框旁边的文本会消失。这是怎么回事?

我的复选框是用@Html.CheckBoxFor 制作的

我现在没有使用任何特殊样式或类属性或任何东西。

【问题讨论】:

  • 我发现这是因为我使用了模型中的标签文本。如果我使用硬编码文本,它会保留。如果标签文本来自模型,则不确定如何保留标签文本

标签: html asp.net validation razor


【解决方案1】:

你是对的。表单发布后,如果您不将其重新发送回您的视图,您将丢失所有这些数据。在您的控制器中,您需要将模型与视图一起返回。没有看到你的代码,我无法给出具体的答案,但它应该是这样的:

public ActionResult DoSomethingWithFormPostData(Model yourModel)
{
    //Do whatever you need to do.
    return PartialView("_yourView", model);
}

另外,我喜欢在我的控制器中有一个方法,用于填充页面的唯一目的。如果你有类似的东西,你可以参考以这种方式将模型作为路由值发送:

public ActionResult DoSomethingWithFormPostData(Model yourModel)
{
    //Do whatever you need to do.
    return RedirectToAction("_yourView", "YourController", model);
}

【讨论】:

  • 这是修复,用于我的标签的模型部分在检查验证后没有返回。
猜你喜欢
  • 1970-01-01
  • 2022-08-15
  • 2012-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多