C# ASP.NET MVC HtmlHelper用法大全 (原文)

HTML扩展类的所有方法都有2个参数:

以textbox为例子

public static string TextBox( this HtmlHelper htmlHelper, string name, Object value, IDictionary<string, Object> htmlAttributes )

public static string TextBox( this HtmlHelper htmlHelper, string name, Object value, Object htmlAttributes )

这2个参数代表这个html标签的属性集合。使用方法如下。

 1.ActionLink

<%=Html.ActionLink("这是一个连接", "Index", "Home")%>
 带有QueryString的写法
 <%=Html.ActionLink("这是一个连接", "Index", "Home", new { page=1 },null)%>
 <%=Html.ActionLink("这是一个连接", "Index", new { page=1 })%>
 有其它Html属性的写法
 <%=Html.ActionLink("这是一个连接", "Index", "Home", new { id="link1" })%>
 <%=Html.ActionLink("这是一个连接", "Index",null, new { id="link1" })%>
 QueryString与Html属性同时存在
 <%=Html.ActionLink("这是一个连接", "Index", "Home", new { page = 1 }, new { id = "link1" })%>
 <%=Html.ActionLink("这是一个连接", "Index" , new { page = 1 }, new { id = "link1" })%>
    
 生成结果为:
 <a href="/">这是一个连接</a>
 带有QueryString的写法
 <a href="/?page=1">这是一个连接</a>
 <a href="/?page=1">这是一个连接</a>
 有其它Html属性的写法
 <a href="/?Length=4" id="link1">这是一个连接</a>
 <a href="/" id="link1">这是一个连接</a>
 QueryString与Html属性同时存在
 <a href="/?page=1" id="link1">这是一个连接</a>
 <a href="/?page=1" id="link1">这是一个连接</a>

 2.RouteLink

跟ActionLink在功能上一样。
 <%=Html.RouteLink("关于", "about", new { })%>
 带QueryString
 <%=Html.RouteLink("关于", "about", new { page = 1 })%>
 <%=Html.RouteLink("关于", "about", new { page = 1 }, new { id = "link1" })%>
    
 生成结果:
 <a href="/about">关于</a>
 <a href="/about?page=1">关于</a>
 <a href="/about?page=1" id="link1">关于</a>

 3.Form 2种方法

<%using(Html.BeginForm("index","home",FormMethod.Post)){%>
<%} %>
   
<%Html.BeginForm("index", "home", FormMethod.Post);//注意这里没有=输出%> 
<%Html.EndForm(); %>
   
生成结果:
<form action="/home/index" method="post"></form>

 4.TextBox , Hidden ,

<%=Html.TextBox("input1") %>
 <%=Html.TextBox("input2",Model.CategoryName,new{ @style = "width:300px;" }) %>
 <%=Html.TextBox("input3", ViewData["Name"],new{ @style = "width:300px;" }) %>
 <%=Html.TextBoxFor(a => a.CategoryName, new { @style = "width:300px;" })%>
    
 生成结果:
    
 <input id="input1" name="input1" type="text" value="" />
 <input id="input2" name="input2" style="width:300px;" type="text" value="Beverages" />
 <input id="input3" name="input3" style="width:300px;" type="text" value="" />
 <input id="CategoryName" name="CategoryName" style="width:300px;" type="text" value="Beverages" />

 5.TextArea

<%=Html.TextArea("input5", Model.CategoryName, 3, 9,null)%>
 <%=Html.TextAreaFor(a => a.CategoryName, 3, 3, null)%>
    
 生成结果:
 <textarea cols="9" id="input5" name="input5" rows="3">Beverages</textarea>
 <textarea cols="3" id="CategoryName" name="CategoryName" rows="3">Beverages</textarea>

 6.CheckBox

<%=Html.CheckBox("chk1",true) %>
<%=Html.CheckBox("chk1", new { @class="checkBox"}) %>
<%=Html.CheckBoxFor(a =>a.IsVaild, new { @class = "checkBox" })%>
   
生成结果:
   
<input checked="checked" id="chk1" name="chk1" type="checkbox" value="true" /><input name="chk1" type="hidden" value="false" />
   
<input class="checkBox" id="chk1" name="chk1" type="checkbox" value="true" /><input name="chk1" type="hidden" value="false" />
   
<input checked="checked" class="checkBox" id="IsVaild" name="IsVaild" type="checkbox" value="true" /><input name="IsVaild" type="hidden" value="false" />

7.ListBox

<%=Html.ListBox("lstBox1",(SelectList)ViewData["Categories"])%>
<%=Html.ListBoxFor(a => a.CategoryName, (SelectList)ViewData["Categories"])%>
   
生成结果:
<select id="lstBox1" multiple="multiple" name="lstBox1">
<option value="1">Beverages</option>
<option value="2">Condiments</option>
<option selected="selected" value="3">Confections</option>
<option value="4">Dairy Products</option>
<option value="5">Grains/Cereals</option>
<option value="6">Meat/Poultry</option>
<option value="7">Produce</option>
<option value="8">Seafood</option>
</select>
<select id="CategoryName" multiple="multiple" name="CategoryName">
<option value="1">Beverages</option>
<option value="2">Condiments</option>
<option value="3">Confections</option>
<option value="4">Dairy Products</option>
<option value="5">Grains/Cereals</option>
<option value="6">Meat/Poultry</option>
<option value="7">Produce</option>
<option value="8">Seafood</option>
</select>

 8.DropDownList

<%= Html.DropDownList("ddl1", (SelectList)ViewData["Categories"], "--Select One--")%>
 <%=Html.DropDownListFor(a => a.CategoryName, (SelectList)ViewData["Categories"], "--Select One--", new { @class = "dropdownlist" })%>
    
 生成结果:
 <select id="ddl1" name="ddl1">
 <option value="">--Select One--</option>
 <option value="1">Beverages</option>
 <option value="2">Condiments</option>
 <option selected="selected" value="3">Confections</option>
 <option value="4">Dairy Products</option>
 <option value="5">Grains/Cereals</option>
 <option value="6">Meat/Poultry</option>
 <option value="7">Produce</option>
 <option value="8">Seafood</option>
 </select>
 <select class="dropdownlist" id="CategoryName" name="CategoryName">
 <option value="">--Select One--</option>
 <option value="1">Beverages</option>
 <option value="2">Condiments</option>
 <option value="3">Confections</option>
 <option value="4">Dairy Products</option>
 <option value="5">Grains/Cereals</option>
 <option value="6">Meat/Poultry</option>
 <option value="7">Produce</option>
 <option value="8">Seafood</option>
 </select>

 9.Partial 视图模板

webform里叫自定义控件。功能都是为了复用。但使用上自定义控件真的很难用好。
<% Html.RenderPartial("DinnerForm"); %>  看清楚了没有等号的。

转载于:https://www.cnblogs.com/jimcsharp/p/4785109.html

C# ASP.NET MVC HtmlHelper用法大全相关推荐

  1. MVC HtmlHelper用法大全

    http://www.cnblogs.com/jyan/archive/2012/07/23/2604474.html HtmlHelper用来在视图中呈现 HTML 控件. 以下列表显示了当前可用的 ...

  2. .net mvc html使用方法,C# ASP.NET MVC HtmlHelper用法汇总

    1. @Html.Raw() 方法输出带有html标签的字符串: 如: @Html.Raw(" Hello World! ") 结果:Hello World! 2. @html.A ...

  3. MVC中HtmlHelper用法大全

    MVC中HtmlHelper用法大全参考 解析MVC中HtmlHelper控件7个大类中各个控件的主要使用方法(1) 2012-02-27 16:25 HtmlHelper类在命令System.Web ...

  4. MVC5 + EF6 + Bootstrap3 (9) HtmlHelper用法大全(下)

    MVC5 + EF6 + Bootstrap3 (9) HtmlHelper用法大全(下) 上一节:MVC5 + EF6 + Bootstrap3 (8) HtmlHelper用法大全(上) 下一节: ...

  5. Asp.Net MVC HttpPost用法

    Asp.Net MVC HttpPost用法 一个Action只能用一个http 特性,例如:HttpPost 不能与HttpGet 或者多个HttpPost重复使用,否则会出错 也可以用 [Acce ...

  6. [转]ASP.NET MVC HtmlHelper扩展之Calendar日期时间选择

    本文转自:http://blog.bossma.cn/asp_net_mvc/asp-net-mvc-htmlhelper-calendar-datetime-select/ 这里我们扩展HtmlHe ...

  7. ASP.NET中EVAL用法大全

    <%# Bind("Subject") %> //绑定字段 <%# Container.DataItemIndex + 1%> //实现自动编号 <% ...

  8. ASP.NET MVC PartialView用法

    子页面AreaSelect.cshtml页面的Controller代码: public ActionResult AreaSelect() {return PartialView(); } 父页面前台 ...

  9. ASP.NET MVC学习资料 新增几个开源项目

    ASP.NET MVC学习资料 新增几个开源项目 ASP.NET MVC MSDN API:  System.Web.Mvc Namespace (暂无中文版):  http://msdn.micro ...

最新文章

  1. Python中numpy模块的简单使用
  2. 山西流感就诊比持续上升 专家为民答疑解惑
  3. PHP+trim乱码,PHP 源码探秘 - 为什么 trim 会导致乱码
  4. 用 ConfigMap 管理配置 - 每天5分钟玩转 Docker 容器技术(159)
  5. ACS被集成到了Windows Azure Management Portal中
  6. [2018.08.09 T1] 数学题
  7. 节奏大师闪退android,安卓节奏大师进不去的原因以及详细解决办法
  8. php编程模块英文缩写_PHP版国家代码、缩写查询函数代码
  9. 小飞鱼-致远OA 搭建借还款应用之选择借款 增加列显示
  10. 草料生成app自动下载的二维码
  11. Linux命令之shred命令
  12. A-Level经济真题(7)
  13. 利用Python在网上接单,兼职也能月薪过万,真的假的?
  14. 9.Java SE 集合
  15. [经济杂谈]经济危机的真相
  16. 【Nginx】Nginx配置实例-反向代理
  17. launchScreen与launchImage 、APP图标问题
  18. 可能是知乎里最浅显易懂的激光测距技术讲解:什么是点激光,线激光,面激光。它们在扫地机器人上是如何应用的。
  19. Doug Vitale技术博客:联网设备的默认密码(来自OEM)
  20. 蓝湖、Cutterman使用方法

热门文章

  1. maven工程如何引用css和js文件
  2. [转] MemCached 的 stats 命令
  3. 推荐10款非常有用的 Ajax 插件
  4. 在wine里安装了IE6
  5. SpringBoot-JPA的查询语言详解
  6. ZipOutputStream 用法 小计
  7. 网络 http服务器-v1-多线程版本
  8. LINQ 的查询执行何时是延迟执行,何时是立即执行,以及查询的复用
  9. 新课改实践下美术课程的新教学观
  10. 右下角android sdk content loader 加载很慢的解决方法