2

我的表单中有一个测试框控件和一个提交按钮控件以及一个标签控件。当我在我的测试框控件中输入一些文本并单击按钮控件时,我无法在我的标签控件中显示该文本。请帮忙。

由于我是 MVC 的新手并且正在学习基础知识,如果您能给我完整的编码,这将对我非常有帮助。

您也可以将编码邮寄给我。提前致谢。

我的代码如下:

模型

using System;
using System.Collections.Generic;
using System.Linq;

using System.Web;

namespace TestMVCProj.Models

{
     public class TestPost
     {
      public string name {get; set;}
     }
}

控制器

using TestMVCProj.Models

public ActionResult TestPost(TestPost tp)
{
    return View();
} 

看法

@model TestMVCProj.Models.TestPost
@{
     ViewBag.Title ="TestPost";
}
@using (Html.BeginForm())
{
     @Html.TestBoxFor (x => x.name)
     <input type="submit" />
}
Your Name is <%= Model.name %>
4

3 回答 3

0

我认为您需要在发布时将模型传递给 View。

public ActionResult TestPost(TestPost tp)
{
    return View(tp);
} 
于 2012-12-05T07:34:50.210 回答
0

您可能需要在 Controller 中执行两个操作:

  1. 一种采用 HTTP GET 且无参数的方式——用于初始页面加载
  2. 一种以 HTTP POST 和模型作为参数的方法——用于回发

public ActionResult TestPost()
{
    return View();
} 

[HttpPost]
public ActionResult TestPost(TestPost post)
{
    return View(post);
} 

此外,由于您使用 Razor 作为视图,因此语法应如下所示:

Your Name is @Model.name
于 2012-12-05T07:35:12.200 回答
0

改变你的看法

 @model TestMVCProj.Models.TestPost
@{
     ViewBag.Title ="TestPost";
}
@using (Html.BeginForm())
{
     Html.TextBoxFor (x => x.name)
     <input type="submit" />
}
Your Name is @Model.name 
于 2012-12-05T10:49:39.150 回答