原文链接:http://www.codeproject.com/Articles/794579/ASP-NET-MVC-HTML-Helpers-A-MUST-KNOW

1.什么是HTML Helpers

  想像HTML Helpers的方法返回一个字符串,是的,它返回的字符串是带有HTML标签的字符串。比如一个img标签、一个a标签,等其它的标签。

  有ASP.NET开发经验的人开发人员能使用HTML Helpers用于Web Form服务器控件的编写,因为它们两有一个共同的目标。但是HTML Helpers更加轻量级,因为它没有视图状态和事件模型,单独使用HTML Helpers,我们可以建立自定义的helpers的方法。

2.HTML Helpers的标准

  对于ASP.NET MVC开发人员,理解HTML Helpers是十分可取的。

  标准的HTML Helpers能分类成下面两种:

    a. URL Heplers = HTML Links + Image Links

    b. HTML Form Elements

3.MVC URL Helpers

  在MVC中提供链接是必需的,有两种类型可用:HTML Links和Image Links,我们分别来讨论它们.

  a. HTML Links

  Html.ActionLink() 帮助方法用于在一个视图中返回HTML Link,该方法可以链接到一个控制器的方法到视图中.

 @Html.ActionLink(“显示的文本”,”actionName”)

  上面的方法是Html.ActionLink的一个重载,可以返回一个<a>标签,链接到控制器的actionName方法

 <a href=”/ControllerName/actionName”>显示的文本</a>

  b. Image Links

  Url.Action()帮助方法可了返回一个Image链接

 <a href=”@Url.Action(“ViewDetails”)”><img src=”./logo.jpg” alt=”View Details” /></a>

  注意:尽管Image Link做了同样的事情,链接到一个控制器的ViewDetails方法,但是如果使用Html.ActionLink方法就不能包含一个img标签

4.MVC HTML Form Element

  为了返回HTML中各种元素的标签,MVC为我提供下以下一些HTML帮助方法

@Html.TextBox("strStudentName") renders:

<input id="strStudentName" name="strStudentName" type="text" value="" />

@Html.TextArea("strAcademicBackground", "", 10, 50, null) renders:

<textarea cols="50" id="strAcademicBackground" name="strAcademicBackground" rows="10">

@Html.Password("strPassword") renders:

<input id="strPassword" name="strPassword" type="password" />

@Html.RadioButton("radGender", "Male", true) renders:

<input checked="checked" id="radGender" name="radGender" type="radio" value="Male" />

@Html.CheckBox("chkDuesPaid", true) renders:

<input checked="checked" id="chkDuesPaid" name="chkDuesPaid" type="checkbox" value="true" />
<input name="chkDuesPaid" type="hidden" value="false" /> @Html.DropDownList ("ddlLevel", new SelectList(new [] {"1st Grade", "2nd Grade", "3rd Grade"})) renders: <select id="ddlLevel" name="ddlLevel">
<option>1st Grade</option>
<option>2nd Grade</option>
<option>3rd Grade</option>
</select>

  这篇文章只能算是一些用法的列举,应当做忘记时来看看的小例子吧。

004.ASP.NET MVC中的HTML Helpers的更多相关文章

  1. 在 ASP.NET MVC 中使用 HTML Helpers 的那些事

    在 ASP.NET MVC 中使用 HTML Helpers 方法,可以返回得到标准的 HTML 标签,就像 <input>.<button> 或者 <img> 等 ...

  2. 理解ASP.NET MVC中的HTML Helpers

    01 内联Html Helpers @helper listItems(string[] items) { <ol> @foreach (var item in items) { < ...

  3. ASP.NET Identity系列02,在ASP.NET MVC中增删改查用户

    本篇体验在ASP.NET MVC中使用ASP.NET Identity增删改查用户. 源码在这里:https://github.com/darrenji/UseIdentityCRUDUserInMV ...

  4. 2.ASP.NET MVC 中使用Crystal Report水晶报表

    上一篇,介绍了怎么导出Excel文件,这篇文章介绍在ASP.NET MVC中使用水晶报表. 项目源码下载:https://github.com/caofangsheng93/CrystalReport ...

  5. 关于 ASP.NET MVC 中的视图生成

    在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通 ...

  6. 在Asp.Net MVC 中配置 Serilog

    Serilog 是一种非常简便记录log 的处理方式,使用Serilog可以生成本地的text文件, 也可以通过 Seq 来在Web界面中查看具体的log内容. 接下来就简单的介绍一下在Asp.Net ...

  7. 如何在 ASP.NET MVC 中集成 AngularJS(3)

    今天来为大家介绍如何在 ASP.NET MVC 中集成 AngularJS 的最后一部分内容. 调试路由表 - HTML 缓存清除 就在我以为示例应用程序完成之后,我意识到,我必须提供两个版本的路由表 ...

  8. 如何在 ASP.NET MVC 中集成 AngularJS(2)

    在如何在 ASP.NET MVC 中集成 AngularJS(1)中,我们介绍了 ASP.NET MVC 捆绑和压缩.应用程序版本自动刷新和工程构建等内容. 下面介绍如何在 ASP.NET MVC 中 ...

  9. 《Entity Framework 6 Recipes》中文翻译系列 (20) -----第四章 ASP.NET MVC中使用实体框架之在MVC中构建一个CRUD示例

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第四章  ASP.NET MVC中使用实体框架 ASP.NET是一个免费的Web框架 ...

随机推荐

  1. 去掉IntelliJ IDEA的拼写检查

    Settings→Editor→Inspections→Spelling 去掉Spelling下的Typo复选框即可 来自为知笔记(Wiz)

  2. u-boot启动流程分析(2)_板级(board)部分

    转自:http://www.wowotech.net/u-boot/boot_flow_2.html 目录: 1. 前言 2. Generic Board 3. _main 4. global dat ...

  3. [svn]svn conflict 冲突解决

    转自:http://www.gezila.com/tutorials/17290.html 目录: 1. 同一处修改文件冲突 1.1. 解决方式一 1.2. 解决方式二 1.3. 解决总结 2. 手动 ...

  4. oracle学习笔记(一)配置监听

    服务器端: 监听器   lsnrctl 启动监听 lsnrctl start [LISTENER] 查看监听 lsnrctl  status  或者  lsnrctl  service C:\Docu ...

  5. 如何缩短SQL Server 的启动时间

    将/nosplash添加到SQLServer Manageement Studio的快捷方式可以缩短启动时间.为此,右击SSMS快捷方式(位于你的桌面上.start菜单中或任务栏中)并选择Proper ...

  6. TMS320C54x系列DSP的CPU与外设——第8章 流水线

    第8章 流水线 本章描述了TMS320C54x DSP流水线的操作,列出了对不同寄存器操作时的流水线延迟周期.(对应英语原文第7章) 8.1 流水线操作 TMS320C54x DSP有一个6段的指令流 ...

  7. 黄聪:jquery mobile使用form进行post提交表单没有反应,显示空白页解决方案

    jquery mobile这货会自动用Ajax方式. 所以需要在表单form标签添加data-ajax="false"这个元素. <form method="pos ...

  8. spark基础练习(未完)

    1.filterval rdd = sc.parallelize(List(1,2,3,4,5))val mappedRDD = rdd.map(2*_)mappedRDD.collectval fi ...

  9. RMAN_Oracle RMAN的常用Command命令

    2014-12-11 Created By BaoXinjian

  10. 7.4 gcd

    # include<stdio.h>int main(){ int gcd(int a,int b); int n,i,x,y,c; scanf("%d",&n ...