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

あなたの見方を

 @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 に答える
0

投稿時にモデルを View に渡す必要があると思います。

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

コントローラーにはおそらく 2 つのアクションが必要です。

  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 に答える