在Asp.net MVC framework中使用扩展方法创建Html Helper
HtmlHelper提供了一些帮助的方法返回一个字符串来生成html. 在System.Web.Mvc.Html命称空间下有一些表单,控件,局部视图Helper方法.我将创建一个生成标签<input type=”submit”,名称为SubmitConfirmHelper的类.看下面:
using System.Web.Mvc; namespace Helpers {public static class SubmitConfirmHelper{/// <summary> /// Renders an HTML form submit confirm button /// </summary> public static string SubmitConfirm(this HtmlHelper helper, string buttonText, string alertMessage){return String.Format("<input type=\"submit\" value=\"{0}\" onClick=\"return confirm('{1}');\" />", buttonText, alertMessage);}} }
因为SubmitConfirm()方法扩展自HtmlHelper类,所以这个方法在HtmlHelper下有智能提示 显示出来:
View使用Html.SubmitConfirm()方法来呈现submit 按钮
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %> <%@ Import Namespace="Helpers"%> <asp:Content ID="aboutTitle" ContentPlaceHolderID="TitleContent" runat="server"> About Us </asp:Content> <asp:Content ID="aboutContent" ContentPlaceHolderID="MainContent" runat="server"> <h2>About</h2> <p> <% using (Html.BeginForm()) { %> <%= Html.SubmitConfirm("Delete", "Do you want to delete?")%> </p> <% } %> </asp:Content>
现在你可以运行下看效果了:
总结
在这篇POST中你学习了如何扩展HTML Helper类来创建自定义HTML
Author: Petter Liu http://wintersun.cnblogs.com
在Asp.net MVC framework中使用扩展方法创建Html Helper相关推荐
- (转)[翻译] ASP.NET MVC Tip #1 - 使用扩展方法创建新的HTML Helper
原文地址:http://weblogs.asp.net/stephenwalther/archive/2008/06/13/asp-net-mvc-tip-1-creating-new-html-he ...
- ASP.NET MVC Framework体验(2):显示列表数据
概述 ASP.NET WebForm下,显示列表数据,经常会使用服务器控件GridView.DataList等.在ASP.NET MVC Framework中,我们有两种方式进行显示数据,一是使用行内 ...
- 理解ASP.NET MVC Framework Action Filters(翻的)
原文地址:Understanding Action Filters 本指南主要解释action filters,action filter作为一个可以应用到controller action(或者是整 ...
- ASP.NET MVC Framework体验(1):从一个简单实例开始
概述 12月10日微软发布了ASP.NET 3.5扩展的预览版,在其中包括了ASP.NET MVC Framework.ASP.NET AJAX改进.ASP.NET动态数据支持.ASP.NET SIl ...
- ASP.NET MVC Framework 系列
序言 做为设计模式的王者,MVC在众多领域都成为良好的模型的代名词,从前在ASP.NET下我们只能依靠Monorail来实现ASP.NET下无控件的MVC,但是现在ASP.NET 下的MVC已经成为现 ...
- 使用ASP.NET MVC Futures 中的异步Action 【转】
之前看过老赵这两篇文章.也研究了一下老赵异步的实现方式. 不过感觉自己扩展的话,在ASP.NET MVC中使用异步还真是麻烦,刚好看到从RC1版开始 ASP.NET MVC Futures中提供了几个 ...
- 【初学者指南】在ASP.NET MVC 5中创建GridView
介绍 在这篇文章中,我们将会学习如何在 ASP.NET MVC 中创建一个 gridview,就像 ASP.NET Web 表单中的 gridview 一样.服务器端和客户端有许多可用的第三方库,这些 ...
- 关于ASP.NET MVC P5中CheckBox的HtmlHelper方法的bug。
在ASP.NET MVC P5中,当你使用这样的方法输出CheckBox:<%=Html.CheckBox("checkTest")%>,在浏览器上除了你期望看到的代码 ...
- 在ASP.NET MVC应用中开发插件框架(中英对照)
[原文] Developing a plugin framework in ASP.NET MVC with medium trust [译文] 在ASP.NET MVC应用中开发一个插件框架 I'v ...
最新文章
- 字节跳动pest分析_字节跳动小程序分析:前景及优势都是什么?
- ​机器学习算法优缺点对比及选择(汇总篇)
- Siverlight去掉ToolTip的白色边框
- DevExpress的TreeList怎样给树节点设置图标
- Bat命令:从Ftp获取文件以及数据导入
- 企业开发中,git提交时屏蔽某些文件,怎么搞!【idea的处理方法】
- 清楚linux缓存文件,Linux删除文件 清除缓存
- 不超过20位的小数正则_意甲身价最贵的20位球星,国米多达7人超过尤文,夺冠成硬任务...
- RHEL5***检测系统(IDS)snort的安装与配置,建议用BASE做控制台
- python捕捉warning_python – 如何格式化logging.captureWarnings捕获的警告?
- 微软编程一小时--微软2014实习生招募编程模拟测试感想
- (赵强老师原创)搭建CDH实验环境,三个节点的安装配置
- Flink查询关联Hbase输出
- Snagit 2020 for mac(最好用的屏幕截图软件)
- 蛋白质配体复合物-分子动力学模拟Gromacs
- 2018年4月自考感想
- 屡败屡战,攻克中项(系统集成项目管理师考试经历分享)
- unity材质球英文翻译
- Java到底能干什么?实事求是地说一下
- 常用数组方法汇总(ES3、ES5、ES6、ES7、ES10)