0

我有一个呈现移动设备详细信息的 Asp.net MVC3 页面。此页面还托管使用评论模型呈现的评论表单。一个名为 Name 的字段,即 Mobile.Name 和 Comment.Name 在这两种模型中都很常见。

在最终输出中,我总是看到 Comment.Name 文本框填充了 Mobile.Name 的值。不知道为什么会这样。

确切的问题可以在下面的链接中看到.. 检查评论选项卡

问题网址

编辑 评论表单使用部分视图呈现,如下所示:

@using (Ajax.BeginForm("Savecomment", new AjaxOptions() { UpdateTargetId = "FormContainer" , OnSuccess = "$.validator.unobtrusive.parse('form');" }))
{
       @Html.HiddenFor(m => m.MobileId)
        <div class="row">
        <div class="five columns">
          <label >Your name:</label>
          @Html.TextBox("Name"," ")
          @Html.ValidationMessage("Name")
        </div>
        </div>
4

1 回答 1

1

您的问题很可能与您如何呈现部分视图有关。我假设您有一个包含 Mobile 和 Comment 的父模型?您正在将评论模型传递给局部视图?因此,局部视图将字段名称呈现为好像它是主要模型一样。

我建议使用 EditorTemplate 来呈现您的 Comment 和 Mobile 而不是部分视图。编辑器模板比部分视图更了解它们的上下文。

于 2012-07-22T05:23:17.223 回答