扩展HtmlHelper
eg3:扩展HtmlHelper
扩展方法类

1 public static class HtmlExtension
2 {
3 /// <summary>
4 /// 输出表单提交按钮
5 /// </summary>
6 /// <param name="htmlHelper">HtmlHelper对象</param>
7 /// <param name="name"></param>
8 /// <param name="value"></param>
9 /// <returns></returns>
10 public static MvcHtmlString Submit(this HtmlHelper htmlHelper,string name,string value)
11 {
12 //TagBuilder 用于辅助创建标记
13 var builder = new TagBuilder("input");
14 builder.MergeAttribute("type","submit");
15 //设置value属性
16 builder.MergeAttribute("value",value);
17 //设置name属性
18 builder.MergeAttribute("name",name);
19 //设置id属性
20 builder.GenerateId(name);
21 return MvcHtmlString.Create(builder.ToString());
22 }
23
24 public static MvcHtmlString Submit(this HtmlHelper htmlHelper, string name, string value, object htmlAttributes)
25 {
26 //TagBuilder 用于辅助创建标记
27 var builder = new TagBuilder("input");
28 builder.MergeAttribute("type", "submit");
29 //设置value属性
30 builder.MergeAttribute("value", value);
31 //设置name属性
32 builder.MergeAttribute("name", name);
33 //设置id属性
34 builder.GenerateId(name);
35 //设置其他属性
36 builder.MergeAttributes(new RouteValueDictionary(htmlAttributes));
37 return MvcHtmlString.Create(builder.ToString());
38 }
39 }

//页面中进行使用

1 @{
2 Layout = null;
3 }
4 @using ExtensionMethods.App_Code;
5
6 <!DOCTYPE html>
7
8 <html>
9 <head>
10 <meta name="viewport" content="width=device-width" />
11 <title>Index</title>
12 </head>
13 <body>
14 <div>
15 @Html.Submit("login","登录")
16
17 @Html.Submit("login", "登录", new { @class="opt_sub",title="点击提交"})
18 </div>
19 </body>
20 </html>
扩展HtmlHelper的更多相关文章
- ASP.NET MVC 扩展HtmlHelper类方法
1.扩展HtmlHelper类方法ShowPageNavigate 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ...
- 扩展HtmlHelper方法
1.在Model中新建类MyHtmlHelperExt /// <summary> /// 扩展HtmlHelper方法 /// 扩展方法三要素:静态类,静态方法,this关键字 /// ...
- 扩展HtmlHelper类实现Mvc4分页
1.扩展HtmlHelper类方法Pager public static HtmlString Pager(this HtmlHelper htmlHelper, int currentPage, i ...
- 扩展htmlhelper.DropDownListFor 支持list数据源和option增加属性
mvc自带的DropDownListFor数据源必须是IEnumerable<SelectListItem>.并且option不支持增加自定义属性.在使用bootstrap-select组 ...
- MVC教程七:扩展HtmlHelper方法
在上一篇文章的最后,列出了一些常见的HtmlHelper的方法,这些都是ASP.NET MVC已经定义好的,如果我们想自己定义一个HtmlHelper方法可以吗?答案是肯定的,那么如何自定义一个Htm ...
- MVC扩展HtmlHelper,加入RadioButtonList、CheckBoxList、DropdownList
代码: using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions ...
- ASP.NET MVC 扩展HtmlHelper类为 js ,css 资源文件添加版本号
写在前面 在项目部署当中会需要更新 css 文件或 js 等资源文件,为了避免由于浏览器缓存的原因无法加载新的 css 或 js ,一般的做法是在资源文件的后面加上一个版本号来解决,这样浏览器就会去服 ...
- 【asp.net mvc】 扩展 htmlhelper 实现分页
参考文档:http://www.cnblogs.com/caofangsheng/p/5670071.html http://www.cnblogs.com/arte ...
- Asp.Net Mvc4分页,扩展HtmlHelper类
1.分页方法 using System.Collections.Generic; using System.Collections.Specialized; using System.Linq; ...
随机推荐
- Go:类型断言
一.基本介绍 类型断言:由于接口是一般类型,不知道具体类型,如果要转成具体类型,就需要使用类型断言. 如果希望将一个空接口类型重新转换成对应的类型,那么需要使用类型断言,能转换成功是因为这个空接口原先 ...
- mysql主从同步 change master to配置
CHANGE MASTER TO MASTER_HOST='10.0.0.52', MASTER_PORT=3308, MASTER_AUTO_POSITION=1, MASTER_USER='rep ...
- 5.12-leepcode 作业详解
leepcode 作业详解 1.给定一个整数数组,判断是否存在重复元素.如果任何值在数组中出现至少两次,函数返回 true.如果数组中每个元素都不相同,则返回 false. 正确解答 class So ...
- LeetCode(11) Container With Most Water
题目 Given n non-negative integers a1, a2, -, an, where each represents a point at coordinate (i, ai). ...
- ZZULIoj 1908 小火山的围棋梦想
Description 小火山最近喜欢上了围棋. 对于围棋,其实小火山是一窍不通的.现在棋盘上,有很多小火山的棋子. 如果棋盘上有这样的一个位置, 那么这个位置也会变成小火山 的棋子:这样的位 ...
- Huffman codes
05-树9 Huffman Codes(30 分) In 1953, David A. Huffman published his paper "A Method for the Const ...
- luogu1463 [HAOI2007]反素数
以下证明来自算法竞赛进阶指南 引理一: 答案就是 \([1,n]\) 之间约数个数最多的最小的数. 证明: 记 \(m\) 是 \([1,n]\) 之间约数个数最多的最小的数.则 \(\forall ...
- struts2拦截器加自定义注解实现权限控制
https://blog.csdn.net/paul342/article/details/51436565 今天结合Java的Annotation和Struts2进行注解拦截器权限控制. 功能需求: ...
- Android渲染器Shader:环状放射渐变渲染器RadialGradient(三)
Android渲染器Shader:环状放射渐变渲染器RadialGradient(三) Android RadialGradient渲染器提供一种环状.发散.放射形状的渐变渲染器. 写一个例子: ...
- FZU-1881-Problem 1881 三角形问题,打表二分查找~~
B - 三角形问题 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Descripti ...