0

ASP.NET.NVC MVC 4 を使用しています。

asp.net mvc 3 または 4 の非表示フィールドに値を設定するにはどうすればよいですか?

私が書いたカミソリビューで:

 @Html.Hidden("HProjectTypeId", Model.ProductTypeId);

しかし、コントローラーでは、null 値を取得しています。

4

2 に答える 2

0

フォームを送信するコントローラー アクションがHProjectTypeIdパラメーターを受け取る場合、このパラメーターには非表示フィールドから正しい値が渡されます。

[HttpPost]
public ActionResult SomeAction(int hProjectTypeId)
{
    // hProjectTypeId will contain the value of the hidden field here

    ...
}

これはモデルでも機能します。次のモデルがあると仮定します。

public class MyViewModel
{
    public int HProjectTypeId { get; set; }

    ...
}

そして、このビュー モデルをパラメーターとして受け取るコントローラー アクション:

[HttpPost]
public ActionResult SomeAction(MyViewModel model)
{
    // model.HProjectTypeId will contain the value of the hidden field here
    ...
}

サーバーに POST された非表示フィールドの値を読み取ることができます。

于 2012-12-26T09:24:24.787 に答える