猿教程 Logo

使用HtmlHelper创建隐藏控件

在本节中,了解如何使用HtmlHelper在razor视图中生成隐藏字段。

HtmlHelper类包括两个扩展方法,以在Razor视图中生成隐藏字段(<input type =“hidden”>):Hidden()和HiddenFor()。

我们将使用以下Student模型来演示Hidden()和HiddenFor()方法。

相关实例:

public class Student
{
    public int StudentId { get; set; }
    [Display(Name="Name")]
    public string StudentName { get; set; }
    public int Age { get; set; }
    public bool isNewlyEnrolled { get; set; }
    public string Password { get; set; }
}

Hidden():

Html.Hidden()方法生成具有指定名称,值和html属性的输入隐藏字段元素。

Hidden()方法签名:

MvcHtmlString Html.Hidden(string name,object value,object htmlAttributes)

Hidden()方法有很多重载。 请访问MSDN了解Hidden()方法的所有重载。

以下示例为Student模型的StudentId属性创建一个隐藏字段。 它将StudentId与隐藏字段绑定,以便它可以将StudentId的值分配给隐藏字段,反之亦然。

相关实例:

@model Student

@Html.Hidden("StudentId")

运行结果:

<input id="StudentId" 
            name="StudentId" 
            type="hidden" 
            value="1" />

HiddenFor:

HiddenFor帮助方法是一种强类型扩展方法。 它为使用lambda表达式指定的模型属性生成隐藏的输入元素。 HiddenFor方法将指定的模型对象属性绑定到<input type =“hidden”>。 因此,它会自动将模型属性的值设置为隐藏字段,反之亦然。

HiddenFor()方法签名:

MvcHtmlString Html.HiddenFor(Expression <Func <dynamic,TProperty >> expression)

访问MSDN知道HiddenFor()方法的所有重载。

相关实例:

@model Student

@Html.HiddenFor(m => m.StudentId)

运行结果:

<input data-val="true" 
            data-val-number="The field StudentId must be a number." 
            data-val-required="The StudentId field is required." 
            id="StudentId" 
            name="StudentId" 
            type="hidden" 
            value="1" />

在上面的例子中,HiddenFor()方法中的第一个参数是一个lambda表达式,它指定要与隐藏字段绑定的model属性。 我们在上面的例子中指定了StudentId属性。 因此,它生成输入文本元素,其id&name设置为属性名称。 value属性将设置为上面示例中为1的StudentId属性的值。

请注意,它已经创建了用于在ASP.Net MVC中验证的html5的data-属性。


版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: C#环境
本文地址:http://www.yuanjiaocheng.net/mvc/mvc-helper-hiddenfield.html