14

コントローラから非表示フィールドの値を設定したいのですが、どうすればよいですか?

ビューの部分では、私はこのように与えました..

 <div>
@Html.Hidden("hdnFlag", null, new { @id = "hdnFlag" }) 
</div>
4

8 に答える 8

18

に対応する値を設定できますViewData/ViewBag

ViewData["hdnFlag"] = "some value";

しかし、より良いアプローチは、もちろんビューモデルを使用することです:

model.hdnFlag = "some value";
return View(model);

ビューで強く型付けされたヘルパーを使用します。

@Html.HiddenFor(x => x.hdnFlag, new { id = "hdnFlag" })
于 2013-06-01T08:48:17.660 に答える
7

ビュー モデルがなければ、単純な HTML 隠し入力を使用できます。

<input type="hidden" name="FullName" id="FullName" value="@ViewBag.FullName" />
于 2015-01-09T22:04:56.800 に答える
6

テストがモデルであり、名前、アドレスがこのモデルのフィールドであると仮定して、コントローラーに次のコードを記述する必要があります。

public ActionResult MyMethod()
{
    Test test=new Test();
    var test.Name="John";
    return View(test);   
}

ビューでこのように使用して、隠し変数の設定値を指定します。

@model YourApplicationName.Model.Test

@Html.HiddenFor(m=>m.Name,new{id="hdnFlag"})

これにより、隠し値 = john が自動的に設定されます。

于 2013-06-01T08:51:42.250 に答える