ASP.NET MVC HtmlHelper类的辅助和扩展方法

(1)ActionLink 生成一个特定的控制器行为连接

<%=Html.ActionLink("Edit", "Edit", "Book", new { id = Model.ID }, new { @class = "BookDetail"})%>
具体说明:

Edit,为linkText,具体而言就是显示的字符串
Edit,对应为ActionName;
Book,为Controller;
new { id = Model.ID },为生成元素的id定义;
new { @class = “BookDetail” },则为元素添加了tag要素

(2)AntiForgeryToken 生成一个隐藏的表单字段,可与ValidateAntiForgeryToken属性一起使用以确保Request没有被修改

具体说明:

如果你要保护你的应用程序的多个形式的相互独立,AntiForgeryToken 将生成不同的防伪标志

<%= Html.AntiForgeryToken("someArbitraryString") %>

[ValidateAntiForgeryToken(Salt="someArbitraryString")]
public ViewResult SubmitUpdate()
{
// ... etc
}

(3)AttributeEncode 数据属性编码 :提供了HtmlAttributeEncode功能

具体说明:

<%= Html.AttributeEncode(Url.Action("Login")) %>

(4)DropDownList 基于一对键值对生成DropDownList

具体说明:

Html.DropDownList( string name, IEnumerable<SelectListItem> selectList, string optionLabel, object htmlAttributes)

name:选择元素的名称,绑定到元素视图的模型属性

selectList:选项列表,

optionLabel:类似与“Select …” 可选的默认的标签

htmlAttributes:可添加的属性

使用方法

List<SelectListItem> items = new List<SelectListItem>();
items.Add( new SelectListItem { Text = "Swimming", Value = "1" });
items.Add(new SelectListItem { Text = "Cycling", Value = "2", Selected = true });
items.Add(new SelectListItem { Text = "Running", Value = "3" });
ViewData["ListItems"] = items;

List<SelectListItem> items = new List<SelectListItem>();
items.Add( new SelectListItem { Text = "Swimming", Value = "1" });
items.Add(new SelectListItem { Text = "Cycling", Value = "2", Selected = true });
items.Add(new SelectListItem { Text = "Running", Value = "3" });
ViewData["ListItems"] = items;

复制代码

<%= Html.DropDownList("ListItems") %>

(5)Encode 编码字符串,以防跨站脚本攻击

使用方法
< %=Html.Encode("< script src=\"j . JS\">< div background='javascript:alert('');'/>")%>
编码结果
&lt;script src=&quot;j . JS&quot;&gt;&lt;/script&gt;&lt;div background='javascript:alert('');'/&gt;

(6)Hidden 生成表单隐藏字段

<%= Html.Hidden("SearchType", 1) %>

前台源代码:

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

(7)ListBox 基于列键值对生成下拉框

使用方法:

<%= Html.ListBox(
"optionsList",
new []
{
new SelectListItem
{
Text = "Option 1",
Value = "opt1"
},
new SelectListItem
{
Text = "Option 2",
Value = "opt2"
},
new SelectListItem
{
Text = "Option 3",
Value = "opt3"
}
},
"Choose an option"
) %>

<%= Html.ListBox(
"optionsList",
new []
{
new SelectListItem
{
Text = "Option 1",
Value = "opt1"
},
new SelectListItem
{
Text = "Option 2",
Value = "opt2"
},
new SelectListItem
{
Text = "Option 3",
Value = "opt3"
}
},
"Choose an option"
) %>

复制代码

前台源代码:

<select Length="16" id="optionsList" multiple="multiple" name="optionsList">

<option value="opt1">Option 1</option>
<option value="opt2">Option 2</option>
<option value="opt3">Option 3</option>
</select>
(8)Pasword 生成表单密码字段

使用方法:

<%= Html.Password("password", ViewData["password"]) %>
(9)TextBox 生成文本框

使用方法:

<%=Html.TextBox("Name", Model.Contact.Name)%>

前台源代码:

<input id="Name" name="Name" type="text" value="Alan" / >
(10)Button 生成一个按钮

最新发布2.0.0.0MVC的已经没有了
(11)CheckBox 生成checkBox

使用方法:

<%= Html.CheckBox("a") %>

前台源代码:

<input id="a" name="a" type="checkbox" />
(12)BeginForm 生成的HTML表单

使用方法:

<% using (Html.BeginForm(Model.PostAction, "Home", FormMethod.Post))
{ %>

前台源代码:

<form action="/Home/Post" method="post">

(13)Image 生成图像标签

引用一张图片

<%=Html.Image("~/Images/bigwave.jpg") %><br />

设置名称与宽度
<%=Html.Image("~/Images/bigwave.jpg", "myWave", new { width = "30px" })%><br />
(14)Mailto 生成Email连接

Simple Email:
<%=Html.MailTo("mailto:weflytotti@163.com%22,%22Email Me!") %>

With Subject and Body
<%=Html.MailTo("mailto:weflytotti@163.com%22,%22Email Me!","Sending you a note"
,"Hey - wanted to say hi!") %>

(15)RadioButton 可选按钮

<%=Html.RadioButton("Name","value") %>
RenderAction 呈现一个控制器行为方法
RenderPartial 由另一个视图引擎可选的呈现部分视图
RenderUserControl 呈现用户控件
RouteLink 生成特定的路由连接
SubmitButton 呈现一个类似按钮提交表单字段
SubmitImage 呈现一个类似图像提交表单字段
TextArea 呈现一个文本域
ValidationMessage 为特定的ViewData呈现一个验证信息
ValidationSummary 呈现一个ViewData的验证摘要。

原文地址:https://www.cnblogs.com/suizhikuo/p/2615956.html