在ASP.NET MVC框架中没有了自己的控件,页面显示完全就回到了写html代码的年代。还好在asp.net mvc框架中也有自带的HtmlHelper和UrlHelper两个帮助类。另外在MvcContrib扩展项目中也有扩展一些帮助类,这样我们就不光 只能使用完整的html来编写了需要显示的页面了,就可以使用这些帮助类来完成,但最后运行时都还是要生成html代码的。

先来看看HtmlHelper能帮我们生成一些什么样的html呢。直接看效果吧。


    <div>

        1.使用HtmlHelper生成超链接:

        <%=Html.ActionLink("我是超链接","") %>

        <br />

        2.使用HtmlHelper生成表单:

        <% Html.BeginForm("Index", "Simple", FormMethod.Post, new { id = "myForm" }); %>

        <% Html.EndForm();%>

        <br />

        3.使用HtmlHelper根据路由规则生成表单:

        <% Html.BeginRouteForm(new { controller = "Simple", action = "Demo" }); %>

        <%Html.EndForm(); %>

        <br />

        4.使用HtmlHelper生成一个复选框:

        <%= Html.CheckBox("checkBox",new { id="myCheckBox" })%>复选框

        <br />

        5.使用HtmlHelper生成上拉列表框:

        <% var dropList = new List<SelectListItem>();

           for (int i = 0; i < 5; i++)

           {

               var dropItem = new SelectListItem();

               dropItem.Value = i.ToString();

               dropItem.Text = i.ToString();

               dropList.Add(dropItem);

           }

        %>

        <%=Html.DropDownList("myList", dropList, new { style = "width:100px;" })%>

        <br />

        6.使用HtmlHelper生成隐藏域:

        <%=Html.Hidden("hidden") %>

        <br />

        7.使用HtmlHelper生成列表框:

        <%var list = new List<SelectListItem>();

          for (var i = 0; i < 5; i++)

          {

              var item = new SelectListItem();

              item.Value = i.ToString();

              item.Text = i.ToString();

              list.Add(item); 

          }  

             %>

        <%=Html.ListBox("listBox", list, new {style="width:100px;" })%>        

        <br />       

        8.使用HtmlHelper生成密码输入框:

        <%=Html.Password("password","longgel") %>

        <br />

        9.使用HtmlHelper生成单选框:

        <%=Html.RadioButton("radio","boy",true) %>男

        <%=Html.RadioButton("radio","girl",false) %>女

        <br />

        10.使用HtmlHelper生成部分视图(用户控件):

        <% Html.RenderPartial("PartialView"); %>

        <br />

        11.使用HtmlHelper根据路由规则生成超链接:

        <%= Html.RouteLink("我是由路由生成的超链接",new {controller="Simple",action="Index"}) %>

        <br />

        12.使用HtmlHelper生成富文本框:

        <%=Html.TextArea("myTxtArea",new{style="width:300px; height:100px;"}) %>

        <br />

        13.使用HtmlHelper生成文本框:

        <%=Html.TextBox("myTxtBox","我是文本框")%>

    </div>

其实大家可能注意到了,当我们在使用<%%>中有同样都是使用的HtmlHelper中的方法,为什么有的需要加上等号,有的不需要,
其实在HtmlHelper中的方法中,只要是返回的是MvcHtmlString类型的方法都需要使用等号将值输出。在来看看生成的结果吧。


    <div>

        1.使用HtmlHelper生成超链接:

        <a href="/">我是超链接</a>

        <br />

        2.使用HtmlHelper生成表单:

        <form action="/" id="myForm" method="post"></form>

        <br />

        3.使用HtmlHelper根据路由规则生成表单:

        <form action="/Simple/Demo" method="post"></form>

        <br />

        4.使用HtmlHelper生成一个复选框:

        <input id="myCheckBox" name="checkBox" type="checkbox" value="true" /><input name="checkBox" type="hidden" value="false" />复选框

        <br />

        5.使用HtmlHelper生成上拉列表框:

        <select id="myList" name="myList" style="width:100px;"><option value="0"></option>

<option value="1"></option>

<option value="2"></option>

<option value="3"></option>

<option value="4"></option>

</select>

        <br />

        6.使用HtmlHelper生成隐藏域:

        <input id="hidden" name="hidden" type="hidden" value="" />

        <br />

        7.使用HtmlHelper生成列表框:

        <select id="listBox" multiple="multiple" name="listBox" style="width:100px;"><option value="0"></option>

<option value="1"></option>

<option value="2"></option>

<option value="3"></option>

<option value="4"></option>

</select>        

        <br />       

        8.使用HtmlHelper生成密码输入框:

        <input id="password" name="password" type="password" value="longgel" />

        <br />

        9.使用HtmlHelper生成单选框:

        <input checked="checked" id="radio" name="radio" type="radio" value="boy" />男

        <input id="radio" name="radio" type="radio" value="girl" />女

        <br />

        10.使用HtmlHelper生成部分视图(用户控件):

        

 

<span style="background-color:Red">Hi,我是部分视图(用户控件)</span>

        <br />

        11.使用HtmlHelper根据路由规则生成超链接:

        <a href="/">我是由路由生成的超链接</a>

        <br />

        12.使用HtmlHelper生成富文本框:

        <textarea cols="20" id="myTxtArea" name="myTxtArea" rows="2" style="width:300px; height:100px;">

</textarea>

        <br />

        13.使用HtmlHelper生成文本框:

        <input id="myTxtBox" name="myTxtBox" type="text" value="我是文本框" />

    </div>

另外HtmlHelper中还有ValidationMessage()和 ValidationSummary()等方法,下次学到验证的时候一起写出来。^_^

在ASP.NET MVC框架中没有了自己的控件,页面显示完全就回到了写html代码的年代。还好在asp.net
mvc框架中也有自带的HtmlHelper和UrlHelper两个帮助类。另外在MvcContrib扩展项目中也有扩展一些帮助类,这样我们就不光
只能使用完整的html来编写了需要显示的页面了,就可以使用这些帮助类来完成,但最后运行时都还是要生成html代码的。

先来看看HtmlHelper能帮我们生成一些什么样的html呢。直接看效果吧。

其实大家可能注意到了,当我们在使用<%%>中有同样都是使用的HtmlHelper中的方法,为什么有的需要加上等号,有的不需要,
其实在HtmlHelper中的方法中,只要是返回的是MvcHtmlString类型的方法都需要使用等号将值输出。在来看看生成的结果吧。

另外HtmlHelper中还有ValidationMessage()和 ValidationSummary()等方法,下次学到验证的时候一起写出来。^_^

原文:http://www.cnblogs.com/longgel/archive/2010/02/03/1662894.html

(asp.net MVC学习)System.Web.Mvc.HtmlHelper学习及使用的更多相关文章

  1. MVC的System.Web.Mvc.ViewPage小结

    Inherits="System.Web.Mvc.ViewPage<dynamic>这一句最好是自己手动修改,如果是维护用户数据,用户对象名是User,改成Inherits=&q ...

  2. (asp.net MVC学习)System.Web.Mvc.UrlHelper的学习与使用

    上一次学习了HtmlHelper帮助类,这次我们学习一下UrlHelper帮 助类,看类名也都知道这个类是用来帮我们生成URL在ASP.NET MVC应用程序中.让我们来看看该类给我们带来了哪些方便的 ...

  3. ASP.NET MVC2未能加载类型“System.Web.Mvc.ViewPage的解決方法

    问题描述: “/”应用程序中的服务器错误. 分析器错误 说明: 在分析向此请求提供服务所需资源时出错.请检查下列特定分析错误详细信息并适当地修改源文件. 分析器错误消息: 未能加载类型“System. ...

  4. Could not load type 'System.Web.Mvc.ViewPage<dynamic>' in asp.net mvc2 after publishing the website

    在WebConfig里 找到 <pages></pages> <pages pageParserFilterType="System.Web.Mvc.ViewT ...

  5. <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

    Asp.net Mvc 未能加载类型“System.Web.Mvc.ViewPage 的解決方法 2010-11-30 17:31:51|  分类: .net mvc |举报 |字号 订阅   如果多 ...

  6. 修改System.Web.Mvc.WebViewPage创建自己的pageBase

    <system.web.webPages.razor> <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, ...

  7. System.Web.Mvc 找到的程序集清单定义与程序集引用不匹配

    System.IO.FileLoadException: 未能加载文件或程序集"System.Web.Mvc, Version=5.0.0.0, Culture=neutral, Publi ...

  8. asp.net MVC3 “System.Web.Mvc.ModelClientValidationRule”问题

    错误提示: Error 1 The type 'System.Web.Mvc.ModelClientValidationRule' exists in both 'c:\Program Files ( ...

  9. MVC 5.0 之奇葩错误-<类型“ASP._Page__ViewStart_cshtml”不从“System.Web.WebPages.StartPage”继承>

    在实际项目中,我们通常添加MVC项目会先添加一个MVC Empty 的项目,然后需要什么在往里面添加. 但是Empty项目里面只有一个路由注册,而且没有_ViewStart.cshtml文件需要自己添 ...

随机推荐

  1. jQuery + css 公告从左往右滚动

    $(function() { // 公告滚动 $(".notice-content").textScroll(); }); /** * 从右往左滚动文字 * @returns {u ...

  2. 生成简历经验总结(解析HTML字符串)

    在生成简历的过程中,我的做法是首先设计一个word的简历模板,设置好书签,从数据库中读取数据,调用aspose进行填充.一般的数据项包括图片文件都没有问题. 问题出在了HTML字符串上.因为简历中有几 ...

  3. Control character in cookie value, consider BASE64 encoding your value-Cookie保存中文出错[转]

    项目当中用到cookie保存中文,但是会报如下错误: Control character in cookie value, consider BASE64 encoding your value 大概 ...

  4. php的DOMDocument 如何判断xml是否存在某节点

    在做xml解释时,需要判断是否存在某个节点,查了手册函数,硬是没有发现那个函数有这个功能(如果你知道的话,请留言,博主感激涕零). 下面,就说下博主,经过N多博文,论坛查阅后,得到的一种方法(看到的博 ...

  5. JSON基础学习

    定义 JSON时轻量级的文本数据交换格式,独立于语言,比xml更小更快更易解析 JSON解析器和JSON库支持不同的编程语言 4个基本规则 1. 并列数据间用 逗号, 2. 映射用冒号表示 3. 并列 ...

  6. U盘详解

    摘要:U盘,称呼最早来源于朗科公司生产的一种新型存储设备,名曰“优盘”,使用USB接口进行连接.USB接口就连到电脑的主机后,U盘的资料可与电脑交换.而之后生产的类似技术的设备由于朗科已进行专利注册, ...

  7. 封装fastjson为spring mvc的json view

    可以将其中的main方法删掉.测试用的.我测试的结果是,jackson比fastjson快. fastjson是1.1.36 jackson是2.2.3 jdk是1.7.40,client cpu是i ...

  8. UDP包的大小与MTU

    在进行UDP编程的时候,我们最容易想到的问题就是,一次发送多少bytes好?当然,这个没有唯一答案,相对于不同的系统,不同的要求,其得到的答案是不一样的,我这里仅对像ICQ一类的发送聊天消息的情况作分 ...

  9. 你真的用上keepalive了吗

    转自http://qa.blog.163.com/blog/static/19014700220134771052763/ Keep-Alive即俗称的长连接,使客户端到服务端建立的连接持续有效,当对 ...

  10. PIE(二分) 分类: 二分查找 2015-06-07 15:46 9人阅读 评论(0) 收藏

    Pie Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submissio ...