======================================================
注:本文源代码点此下载
======================================================
此教程向你演示如何在你的mvc视图里创建自定义html helper。利用 html helpers, 可以减少乏味的输入html标签。
在教程的第一部分,我描述了asp.net mvc框架已有的html helper。然后,我描述了创建自定义html helper的两个方法:我会解释如何通过创建静态方法和扩展方法来创建html helper。
理解 html helper
html helper 只是一个返回字符串的方法。这个字符串可以表示你想要的任何内容。例如,你可以使用html helper来呈现标准的html标签如 html和标签。你还可以用html helper来呈现更多复杂内容比如一个标签页或者一个数据库数据的html表格。
asp.net mvc 框架包括了以下标准的html helpers (此列表并不完整):
html.actionlink()
html.beginform()
html.checkbox()
html.dropdownlist()
html.endform()
html.hidden()
html.listbox()
html.password()
html.radiobutton()
html.textarea()
html.textbox()
例如, 考虑代码1的表单。此表单由两个标准html helper呈现(见图1)。此表单用 html.beginform() 和html.textbox() helper 方法来呈现一个简单的html表单。
图01: 由html helper呈现的页面 (点击查看完整大小)
代码1 – views\home\index.aspx
view plaincopy to clipboardprint?index
first name:
last name:
1
index
first name:
last name:
1
html.beginform() helper 方法用来创建 html标签的开头和结尾。注意 html.beginform() 方法在一个using语句里调用。 using 语句确保标签在using块最后能够关闭。
如果你愿意,不用using块,你可以调用 html.endform() helper 方法来关闭标签。觉得哪个直观你就用哪个吧。
html.textbox() helper 方法用来呈现 html标签。如果你在浏览器中选择查看源代码那么你会看到如图2所示的html源。注意源代码包含了标准的html标签。
重要点: 注意 html.textbox()-html helper 用标签而不是标签来呈现。如果你不加这个等号,那么浏览器将不呈现任何东西。
asp.net mvc 框架包含了一小组helpers。八成情况下,你将需要用自定义html helper来扩展mvc框架。在此教程的其余部分,你会学到两个创建自定义html helper的方法。
代码2 – index.aspx source
view plaincopy to clipboardprint?
总结
在这篇教程里,你学到了两个创建自定义html helper的方法。首先,你学到了如何通过创建一个返回字符串的静态方法来创建一个自定义 label() html helper。 然后,你学到了如何通过在htmlhelper 类中创建一个扩展方法类创建一个自定义 label() html helper。
在这篇教程里,我专注于建立一个极其简单的html helper方法。注意 html helper 可以随你所想地完成。你可以建立呈现诸如树形列表,菜单或者数据库记录的表格等丰富内容的html helper。
本文来自csdn博客,转载请标明出处:http://blog.youkuaiyun.com/ojlovecd/archive/2010/02/28/5333747.aspx
======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/