猿教程 Logo

使用HtmlHelper创建TextArea

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效:去购买

在本节中,了解如何使用HtmlHelper在razor视图中生成TextArea控件。

HtmlHelper类包括两个扩展方法,以在Razor视图中生成多行<textarea>元素:TextArea()和TextAreaFor()。 默认情况下,它创建textarea的行= 2和cols = 20。

我们将使用以下Student模型来测试TextArea()和TextAreaFor()方法。

相关实例:

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

TextArea():

Html.TextArea()方法创建具有指定名称,值和html属性的<textarea rows =“2”cols =“20”>元素。

TextArea()方法签名:

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

TextArea方法有很多重载。 请访问MSDN以了解TextArea方法的所有重载。

TextArea()方法是一种松散类型的方法,因为name参数是一个字符串。 name参数可以是模型对象的属性名称。 它使用textarea绑定指定的属性。 因此,它会在textarea中自动显示model属性的值,反之亦然。

相关实例:

@model Student

@Html.TextArea("Description", null, new { @class = "form-control" })

运行结果:

<textarea class="form-control" 
            id="Description" 
            name="Description" 
            rows="2"
            cols="20">This is value

在上面的示例中,第一个参数是Student模型类的“Description”属性,将被设置为textarea的名称和ID。 第二个参数是要在textarea中显示的值,在上面的示例中为null,因为TextArea()方法将自动显示textarea中的Description属性的值。 第三个参数将被设置为类属性。 HtmlAttributes参数是一个对象类型,因此它可以是匿名对象和属性名称将其属性从@符号开始。

您还可以为textarea指定任何名称。 但是,它不会绑定到模型。

相关实例:

@Html.TextArea("myTextArea", "This is value", new { @class = "form-control" })

运行结果:

<textarea class="form-control" 
            cols="20" 
            id="myTextArea" 
            name="myTextArea" 
            rows="2">This is value

上述示例将生成如下所示的输入元素。



TextAreaFor:

TextAreaFor帮助方法是一种强类型的扩展方法。 它可以使用lambda表达式指定的模型对象中的属性生成多行<textarea>元素。 TextAreaFor方法将指定的模型对象属性绑定到textarea元素。 因此,它会在textarea中自动显示model属性的值,反之亦然。

TextBoxFor()方法签名:

MvcHtmlString TextAreaFor(<表达式<Func键<的TModel,TValue>>表情,对象htmlAttributes)

访问MSDN知道TextAreaFor()的所有重载。

相关实例:

@model Student

@Html.TextAreaFor(m => m.Description, new { @class = "form-control" })

运行结果:

<textarea class="form-control" 
            cols="20" 
            id="Description" 
            name="Description" 
            rows="2">

在上面的示例中,TextAreaFor()方法中的第一个参数是一个lambda表达式,它指定要与textarea元素绑定的model属性。 我们在上面的例子中指定了Description属性。 因此,它生成<textarea>元素,id&name设置为属性名称 - Description。 textarea的值将设置为描述属性的值。

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效: 去购买


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