108

Html.HiddenFor のドキュメントを読んだことはありますが、何に使用されるのか把握できていません...

誰かがその使用法を説明し、短い例を挙げてもらえますか?

これらのヘルパーは、コード内のどこに配置する必要がありますか?

4

4 に答える 4

115

渡したフィールド (モデルから) のフォームに非表示の入力を作成します。

ページに保持する必要があり、別の呼び出しが行われたときに渡されたが、ユーザーには表示されるべきではない Model/ViewModel のフィールドに役立ちます。

次の ViewModel クラスを検討してください。

public class ViewModel
{
    public string Value { get; set; }
    public int Id { get; set; }
}

ここで、編集ページに ID を保存する必要がありますが、表示されないようにします。

<% using(Html.BeginForm() { %>
    <%= Html.HiddenFor(model.Id) %><br />
    <%= Html.TextBoxFor(model.Value) %>
<% } %>

これにより、次の HTML と同等の結果が得られます。

<form name="form1">
    <input type="hidden" name="Id">2</input>
    <input type="text" name="Value" value="Some Text" />
</form>
于 2010-10-05T18:43:59.143 に答える
8

Edit アクション メソッドで非表示の ID 入力を使用するには、次のようにします。

[HttpPost]
public ActionResult Edit(FormCollection collection)
{
    ViewModel.ID = Convert.ToInt32(collection["ID"]);
}
于 2011-03-04T19:20:38.290 に答える
0

Razor コード @Html.Hidden または @Html.HiddenFor の使用は、次の Html コードに似ています。

 <input type="hidden"/>

また、次のリンクを参照してください

https://msdn.microsoft.com/en-us/library/system.web.mvc.html.inputextensions.hiddenfor(v=vs.118).aspx

于 2017-01-04T07:52:56.040 に答える