首页>教程>ASP.NET教程>ASP.NET MVC HTML 帮助器

需要支持?

如果通过文档没办法解决您的问题,请提交工单获取我们的支持!

ASP.NET MVC HTML 帮助器

内容纲要

ASP.NET MVC HTML 帮助器用于修改 HTML 输出

HTML 帮助器

通过 MVC,HTML 帮助器类似于传统的 ASP.NET Web Form 控件

就像 ASP.NET 中的 Web Form 控件,HTML 帮助器用于修改 HTML

但是 HTML 帮助器是更轻量级的

与 Web Form 控件不同,HTML 帮助器没有事件模型和视图状态

在大多数情况下,HTML 帮助器仅仅是一个返回字符串的方法

通过 MVC,我们可以创建自己的帮助器,或者直接使用内建的 HTML 帮助器

标准的 HTML 帮助器

MVC 包含了大多数常用的 HTML 元素类型的标准帮助器,比如 HTML 链接和 HTML 表单元素

HTML 链接

呈现 HTML 链接的最简单的方法是使用 HTML.ActionLink() 帮助器

通过 MVC,Html.ActionLink() 不连接到视图,但它创建了一个连接到控制器操作

Razor 语法

@Html.ActionLink("About this Website", "About")

ASP 语法

<%=Html.ActionLink("About this Website", "About")%>

第一个参数是链接文本,第二个参数是控制器操作的名称

上面的 Html.ActionLink() 帮助器,输出以下的 HTML

<a href="/Home/About">About this Website</a>

Html.ActionLink() 帮助器的一些属性

属性描述
.linkTextURL 文本(标签),定位点元素的内部文本
.actionName操作(action)的名称
.routeValues传递给操作(action)的值,是一个包含路由参数的对象
.controllerName控制器的名称
.htmlAttributesURL 的属性设置,是一个包含要为该元素设置的 HTML 特性的对象
.protocolURL 协议,如 "http" 或 "https"
.hostnameURL 的主机名
.fragmentURL 片段名称(定位点名称)

我们可以向控制器操作传递值,比如可以向数据库 Edit 操作传递数据库记录的 id

Razor 语法 C

@Html.ActionLink("Edit Record", "Edit", new {Id=3})

Razor 语法 VB

@Html.ActionLink("Edit Record", "Edit", New With{.Id=3})

上面的 Html.ActionLink() 帮助器,输出以下的 HTML

<a href="/Home/Edit/3">Edit Record</a>

HTML 表单元素

下面的 HTML 帮助器可用于呈现(修改和输出)HTML 表单元素

  • BeginForm()
  • EndForm()
  • TextArea()
  • TextBox()
  • CheckBox()
  • RadioButton()
  • ListBox()
  • DropDownList()
  • Hidden()
  • Password()

ASP.NET 语法 C#

<%= Html.ValidationSummary("Create was unsuccessful. Please correct the errors and try again.") %>
<% using (Html.BeginForm()){%>
<p>
    <label for="FirstName">First Name:</label>
    <%= Html.TextBox("FirstName") %>
    <%= Html.ValidationMessage("FirstName", "*") %>
</p>
<p>
    <label for="LastName">Last Name:</label>
    <%= Html.TextBox("LastName") %>
    <%= Html.ValidationMessage("LastName", "*") %>
</p>
<p>
    <label for="Password">Password:</label>
    <%= Html.Password("Password") %>
    <%= Html.ValidationMessage("Password", "*") %>
</p>
<p>
    <label for="Password">Confirm Password:</label>
    <%= Html.Password("ConfirmPassword") %>
    <%= Html.ValidationMessage("ConfirmPassword", "*") %>
</p>
<p>
    <label for="Profile">Profile:</label>
    <%= Html.TextArea("Profile", new {cols=60, rows=10})%>
</p>
<p>
    <%= Html.CheckBox("ReceiveNewsletter") %>
    <label for="ReceiveNewsletter" style="display:inline">Receive Newsletter?</label>
</p>
<p><input type="submit" value="Register" /></p>
<%}%>
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索