ASP.net MVC--Htmlhelper

(一)引言

HtmlHelper用来在视图中呈现
HTML 控件。

我们在开发前台和后台交互的时候,绑定数据会很让人头疼,现在我们用MVC帮我们写好了的Htmlhelper来帮我们绑定数据。

用一张图来总结一下HtmlHelper:

我就写咱们最常用的几个吧。

(二)具体Dome

1、TextBox

我们在前台的视图中可以写这样的代码:

<span style="font-family:KaiTi_GB2312;font-size:18px;">@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;" })</span>

生成的HTML代码是这样的:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><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" /></span>

TextArea

<span style="font-family:KaiTi_GB2312;font-size:18px;">@Html.TextArea("input5", Model.CategoryName, 3, 9,null)
@Html.TextAreaFor(a => a.CategoryName, 3, 3, null)</span>

生成代码:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><textarea cols="9" id="input5" name="input5" rows="3">Beverages</textarea>
<textarea cols="3" id="CategoryName" name="CategoryName" rows="3">Beverages</textarea></span>

2、DropDownList

<span style="font-family:KaiTi_GB2312;font-size:18px;">@Html.DropDownList("CId",ViewBag.selList as IEnumerable<SelectListItem>)</span>

效果:

是一个下拉框,从数据库中根据“CId”查询,selList是从后台传来的代码。

后台中的查询:

<span style="font-family:KaiTi_GB2312;font-size:18px;">        public ActionResult Index()
        {
            //1.1查询班级数据
            List<Models.Class> listCla = db.Classes.Where(c => c.CIsDel == false).ToList();//.Select(c => new SelectListItem() { });
            //1.2将班级数据封装到 SelectList中,并指定 要生成下拉框选项的 value 和 text 属性
            SelectList selList = new SelectList(listCla, "CId", "CName");
            //1.3调用 SelectList 的 As 方法,自动生成 SelectListItem集合,并存入ViewBag
            ViewBag.selList = selList.AsEnumerable();
            //1.4加载视图
            return View();
        } </span>

用ViewData获取后台传来的数组。

3、Form

有两种用法,

<span style="font-family:KaiTi_GB2312;font-size:18px;">@using (Html.BeginForm("Login", "User", FormMethod.Post, new { id = "form1" }))
{
    内容

}</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">@Html.BeginForm("Login", "User", FormMethod.Post, new { id="form2" })
    <input type="text" />
@{Html.EndForm();}</span>

这两种都是可以的,但是我们一般会用第一种,因为第一种在结构上简单,好用。

举个例子:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><h2>BeginForm{}创建表单标签 -- 推荐</h2>
@using (Html.BeginForm("Login", "User", FormMethod.Post, new { id = "form1" }))
{
    @Html.TextBox("txtName", "我是文本框", new { style="border:1px solid #0094ff;" });<br />

}</span>

效果:

是不是看起来就很清楚了,这样我们就可以将文本框中的数据提交到Login/User(控制器/视图)用Post方法提交了。

4、Link

ActionLink--链接到操作方法。

<span style="font-family:KaiTi_GB2312;font-size:18px;"><h2>Html.ActionLink 生成超链接</h2>
@Html.ActionLink("我是超链接", "Part", "Home", new { id = "btnLink",style = "border:1px solid #0094ff"})
</span>

效果是:

当点击链接的时候,我们就到了Home/Part(控制器/视图)链接了。

(三)总结

这个部分,只是MVC中很小的一部分,但是就是这很小的部分,是联系了后台和前台数据。

时间: 2024-09-29 00:45:24

ASP.net MVC--Htmlhelper的相关文章

扩展ASP.NET MVC HtmlHelper类

在这篇帖子中我会使用一个示例演示扩展ASP.NET MVC HtmlHelper类,让它们可以在你的MVC视图中工作.这个示例中我会提供一个简单的方案生成Html表格. HtmlHelper类 HtmlHelper类用于在ASP.NET MVC framework中帮助视图呈现html部分. 这个类提供了一些方法,你可以使用这些方法呈现html中的一些类型(textbox,checkbox等),或者html的一部分(如form).ASP.NET MVC framework helper有这些内容

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

本文转自:http://blog.bossma.cn/asp_net_mvc/asp-net-mvc-htmlhelper-calendar-datetime-select/ 这里我们扩展HtmlHelper,就像它包含在ASP.NET MVC中一样,扩展方法使我们能为已有的类添加方法.这里使用了一个日期时间选择控件:My97DatePicker,需要添加到网站中,并在页面中引用. 先看看是怎么扩展的: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

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> //把标签名都显示(直接将内

数往知来 ASP.NET MVC HtmlHelper、MVC快速增删改查 Cache MVC3客户端验证 MVC隐式异步提交 &lt;二十八&gt;

一.HtmlHelper.MVC快速增删改查 MVC 在MVC里面请求首先到控制器-->然后 -->数据库数据放在APP_DATE文件夹里, -->js.css文件放在content文件夹里 -->控制器放在Controllers里,控制器要以controller结尾 控制器下面的所有方法都称为action 2)webform跟 aspnet MVC:区别请求的地址不一样了 MVC请求的是控制器下面的action webform:aspx页面或者是一般处理程序 -->a标签

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, Ob

ASP.NET MVC HtmlHelper之Html.ActionLink

前言 ActionLink用于生成超链接,方法用于指向Controller的Action. 扩展方法与参数说明 ActionLink扩展方法如下: public static MvcHtmlString ActionLink(this HtmlHelper htmlHelper, string linkText, string actionName); public static MvcHtmlString ActionLink(this HtmlHelper htmlHelper, strin

【MVC】ASP.NET MVC HtmlHelper用法大全

1.ActionLink <%=Html.ActionLink("这是一个连接", "Index", "Home")%>   带有QueryString的写法 <%=Html.ActionLink("这是一个连接", "Index", "Home", new { page=1 },null)%> <%=Html.ActionLink("这是一个连接

C# ASP.NET MVC HtmlHelper用法汇总

1. @Html.Raw() 方法输出带有html标签的字符串: 如: @Html.Raw("<div style='color:red'>Hello World!</div>") 结果:Hello World! 2. @html.ActionLink生成一个<a href=".."></a>标记: 如:@Html.ActionLink(“linkText”.“actionName”.“controlName”,new

ASP.NET MVC View中的标签(tag)

在编辑View的时候会用到各种HTML标签,如<a>,<input>,<p>等待,这些标签在ASP.NET MVC中都有对应的编程语法,它叫Razor,它是帮助我们动态的生成HTML标签,好处是可以绑定数据. 现在就让我们来复习一下HTML标签的用法:<input>, 因为它是最常用的表单标签之一,所以先从它开始. 可以移步:http://www.w3cschool.cn/htmltags/tag-label.html 看下它的定义. 基本都是用于接收用户输

ASP.NET MVC 3 CheckBoxList 的使用

在以前的 ASP.NET MVC 中可以直接使用 CheckBoxList,但后来不知道什么原因在 MVC 中移除了 CheckBoxList,所以默认情况下 ASP.NET MVC 3 中是没有 CheckBoxList 的,所以我们不能直接使用 @Html.CheckBoxList.今天我们通过自己动手来实现 ASP.NET MVC 3 中的 CheckBoxList 功能. 首先,让我们看看我例子中两个表之间的关系,如下图: ZTag 表中保存的是文章分类,ZArticle 表中 Tag