asp.net mvc Htmlhelper简单扩展

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace WebApplication1.MyHtmlHelper
{
public static class MyHtmlHelper
{
//页面渲染结果:
//<span>我扩展的Label,自动生成Span标签</span>
//把标签名都显示(直接将内容显示)
public static string MyHtmlLable1(this HtmlHelper html,string lableName)
{
return string.Format("<span>{0}</span>",lableName);
} public static HtmlString MyHtml(this HtmlHelper html, string value)
{
return new HtmlString(value);
} //页面渲染结果:
//span标签
public static HtmlString MyHtmlLable2(this HtmlHelper html, string lableName)
{
return MyHtml(html,string.Format("<span>{0}</span>", lableName));
} //页面渲染结果:
//input标签
public static HtmlString MyTextBox(this HtmlHelper html,string content)
{
return MyHtml(html,string.Format("<input type='type' value='{0}'/>",content));
} }
}
@using WebApplication1.MyHtmlHelper
@{
ViewBag.Title = "Test";
} <h2>Test</h2> @*结果:<span>我扩展的Label,自动生成Span标签</span>*@
@Html.MyHtmlLable1("我扩展的Label,自动生成Span标签") <br /> @*结果:我扩展的Label,自动生成Span标签*@
@Html.MyHtmlLable2("我扩展的Label,自动生成Span标签") <br /> @*结果:span标签测试*@
@Html.MyHtml("span标签测试") <br /> @*textbox*@
@Html.MyTextBox("textbox") <br />
所有标签定义方法:
public static string SelfDefineTagString(this HtmlHelper helper, string tagName, string id, string name, string className,string value, string style)
{
//创建标签
TagBuilder tb = new TagBuilder(tagName);
//定义标签id
tb.GenerateId(id);
//定义标签name
tb.MergeAttribute("name", name);
//定义标签class
tb.AddCssClass(className);
//定义标签样式
tb.MergeAttribute("style", style);
//定义标签内容
tb.SetInnerText(value);
return tb.ToString();
} public static HtmlString SelfDefineTag(this HtmlHelper helper, string tagName, string id, string name, string className,string value, string style)
{
return new HtmlString(SelfDefineTagString(helper, tagName, id, name, className, value, style)); }
html调用方法:
@Html.SelfDefineTag("p", "test", "test", "test", "p标签", "color:red;background:#ccc;width:100px;text-align:center")
asp.net mvc Htmlhelper简单扩展的更多相关文章
- 扩展ASP.NET MVC HtmlHelper类
在这篇帖子中我会使用一个示例演示扩展ASP.NET MVC HtmlHelper类,让它们可以在你的MVC视图中工作.这个示例中我会提供一个简单的方案生成Html表格. HtmlHelper类 Htm ...
- ASP.NET MVC HtmlHelper用法集锦
ASP.NET MVC HtmlHelper用法集锦 在写一个编辑数据的页面时,我们通常会写如下代码 1:<inputtype="text"value='<%=View ...
- 【ASP.NET MVC系列】浅谈ASP.NET MVC八大类扩展(上篇)
lASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操 ...
- ASP .NET MVC HtmlHelper扩展——简化“列表控件”的绑定
在众多表单元素中,有一类<select>元素用于绑定一组预定义列表.传统的ASP.NET Web Form中,它对应着一组重要的控件类型,即ListControl,我们经常用到DropDo ...
- [转]ASP.NET MVC HtmlHelper扩展之Calendar日期时间选择
本文转自:http://blog.bossma.cn/asp_net_mvc/asp-net-mvc-htmlhelper-calendar-datetime-select/ 这里我们扩展HtmlHe ...
- ASP.NET MVC HtmlHelper 类的扩展方法
再ASP.NET MVC编程中用到了R语法,在View页面编辑HTML标签的时候,ASP.NET MVC 为我们准备好了可以辅助我们写这些标签的办法,它们就是HtmlHelper.微软官方地址是:ht ...
- [Asp.net Mvc]通过UrlHelper扩展为js,css静态文件添加版本号
写在前面 在app中嵌入h5应用,最头疼的就是缓存的问题,比如你修改了一个样式,或者在js中添加了一个方法,发布之后,并没有更新,加载的仍是缓存里面的内容.这个时候就需要清理缓存才能解决.但又不想让w ...
- asp.net mvc(一) ----------简单封装成通用的List<T>集合
asp.net mvc(一) 这些天开始学习asp.net mvc,用传统的asp.net已经快四的年了,刚开始接触asp.net mvc确认感觉有点不适应,主要体现在asp.net mvc的实现上. ...
- asp.net mvc htmlHelper
ASP.NET MVC 3.0 HTML辅助方法 HTML辅助方法(html helper)是用来帮助生成HTML的方法. 1.HTML辅助方法应用实例 ◊ 生成form元素 @using (Ht ...
随机推荐
- python2 高级编程
第一 正则表达式 1. 正则表达式意义 正则表达式是高级文本匹配模式,为搜索,匹配,替换提供了基础 2. 搜索与匹配的区别 搜索指在字符串任何部分查找 匹配指在字符串起始处查找 3. 编写正则表达式 ...
- Launch4j Java 转可执行程序工具
launch4j 可以用来将Java应用程序转成Windows本地可执行文件 (.exe).提供了本地弹出屏幕,应用程序图标,JRE搜索或使用绑定的JRE,启动失败反馈,传递命令行参数,ANT编译脚本 ...
- BZOJ3160 万径人踪灭(FFT+manacher)
容易想到先统计回文串数量,这样就去掉了不连续的限制,变为统计回文序列数量. 显然以某个位置为对称轴的回文序列数量就是2其两边(包括自身)对称相等的位置数量-1.对称有啥性质?位置和相等.这不就是卷积嘛 ...
- HDU4409-LCA模拟
给一个家谱,回答给的操作结果. 1)L 按照字典序排序儿子,输出整个家谱. 2)b 求出所给name的所有兄弟. 3)c 求出两个name的LCA 读入数据时,我用一个curfather数组维护固定深 ...
- hdu 5126 stars (四维偏序,离线,CDQ套CDQ套树状数组)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5126 思路:支持离线,那么我们可以用两次CDQ分治使四维降为二维,降成二维后排个序用树状数组维护下就好 ...
- Zabbix 添加对交换机端口流量超出阈值的监控
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 22 Zabbix 添加对交换机端口流量超出阈值的监控 本文主要讲解利用zabbix 添加对交换机 ...
- [USACO 2018 December Contest]作业总结
t1 Convention 题目大意 每一头牛都有一个来的时间,一共有\(n\)辆车,求出等待时间最长的那头牛等待的最小时间. 解法 第一眼看到这道题还以为是\(2018noip\)普及组的t3魔鬼题 ...
- 51nod1236 序列求和 V3 【数学】
题目链接 51nod1236 题解 用特征方程求得斐波那契通项: \[f(n) = \frac{(\frac{1 + \sqrt{5}}{2})^{n} - (\frac{1 - \sqrt{5}}{ ...
- yum 安装Mysql
RHEL6.5-MySql-yum安装登录 客户端工具的使用mysql:Linux下提供了一个访问mysql服务器的客户端工具—mysql,其由mysql软件包提供,除了这些工具之外还有一些图形化界面 ...
- JDK源码分析(5)Vector
JDK版本 Vector简介 /** * The {@code Vector} class implements a growable array of * objects. Like an arra ...