“Model.member”和“Html.TextBoxFor(m => m.member)”是不同的

时间:2013-10-28 20:39:17

标签: c# asp.net-mvc-4

我发送表单每10秒刷新一次页面。我在HttpPost上设置了我的模型的值。出于某种原因,@Model.expression显示正确的数据,但@Html.TextBoxFor(m => m.expression)始终相同(它具有第一个获取请求时获得的值)。他们不应该指出同样的事情吗?

以下是我的观点:

@model vocab_2.Models.TrainingVM

@using (Html.BeginForm(null, null, FormMethod.Post, new { name = "trainingForm", id = "trainingForm" }))
{
    <h1>@Model.expression</h1>

    @Html.TextBoxFor(m => m.expression)

    @Html.TextBoxFor(m => m.usersguess, new { Value = "" })

    @Html.HiddenFor(m => m.meaning, new { id="meaning" })
    @Html.HiddenFor(m => m.ID)
}

1 个答案:

答案 0 :(得分:2)

这是因为视图数据被传递回视图并用于填充字段,而不管模型中的内容是什么。在返回表单之前清除视图数据(但这会“重置”表单!):

ModelState.Clear();
return View();
相关问题