您好,欢迎访问三七文档
1.@Html.ActionLink(Text,ViewName,objectrouteValues)@Html.ActionLink(Text,ViewName,ControlName)2.Html.DisplayFor(modelitem=item.name)3.Html.Display4.@Html.Label();在ASP.NETMVC框架中没有了自己的控件,页面显示完全就回到了写html代码的年代。还好在asp.netmvc框架中也有自带的HtmlHelper和UrlHelper两个帮助类。另外在MvcContrib扩展项目中也有扩展一些帮助类,这样我们就不光只能使用完整的html来编写了需要显示的页面了,就可以使用这些帮助类来完成,但最后运行时都还是要生成html代码的。先来看看HtmlHelper能帮我们生成一些什么样的html呢。直接看效果吧。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生成上拉列表框:%vardropList=newListSelectListItem();for(inti=0;i5;i++){vardropItem=newSelectListItem();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生成列表框:%varlist=newListSelectListItem();for(vari=0;i5;i++){varitem=newSelectListItem();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类型的方法都需要使用等号将值输出。在来看看生成的结果吧。div1.使用HtmlHelper生成超链接:ahref=/我是超链接/abr/2.使用HtmlHelper生成表单:formaction=/id=myFormmethod=post/formbr/3.使用HtmlHelper根据路由规则生成表单:formaction=/Simple/Demomethod=post/formbr/4.使用HtmlHelper生成一个复选框:inputid=myCheckBoxname=checkBoxtype=checkboxvalue=true/inputname=checkBoxtype=hiddenvalue=false/复选框br/5.使用HtmlHelper生成上拉列表框:selectid=myListname=myListstyle=width:100px;optionvalue=00/optionoptionvalue=11/optionoptionvalue=22/optionoptionvalue=33/optionoptionvalue=44/option/selectbr/6.使用HtmlHelper生成隐藏域:inputid=hiddenname=hiddentype=hiddenvalue=/br/7.使用HtmlHelper生成列表框:selectid=listBoxmultiple=multiplename=listBoxstyle=width:100px;optionvalue=00/optionoptionvalue=11/optionoptionvalue=22/optionoptionvalue=33/optionoptionvalue=44/option/selectbr/8.使用HtmlHelper生成密码输入框:inputid=passwordname=passwordtype=passwordvalue=longgel/br/9.使用HtmlHelper生成单选框:inputchecked=checkedid=radioname=radiotype=radiovalue=boy/男inputid=radioname=radiotype=radiovalue=girl/女br/10.使用HtmlHelper生成部分视图(用户控件):spanstyle=background-color:RedHi,我是部分视图(用户控件)/spanbr/11.使用HtmlHelper根据路由规则生成超链接:ahref=/我是由路由生成的超链接/abr/12.使用HtmlHelper生成富文本框:textareacols=20id=myTxtAreaname=myTxtArearows=2style=width:300px;height:100px;/textareabr/13.使用HtmlHelper生成文本框:inputid=myTxtBoxname=myTxtBoxtype=textvalue=我是文本框//div另外HtmlHelper中还有ValidationMessage()和ValidationSummary()等方法,下次学到验证的时候一起写出来。^_^在写一个编辑数据的页面时,我们通常会写如下代码由前篇我们所讲的Helper演化,我们思考,对于这种代码我们是不是也可以用一个Helper来自动绑定数据呢这当然是可以的,ASP.NETMVC提供了一个HtmlHelper用于生成有数据绑定的Html标签。1.ActionLink其中最常用的就是Html.ActionLink(1).ActionLink(stringlinkText,stringactionName)//页面显示linkText指向Global.asax.cs中默认的Controller对象的actionName方法(2).ActionLink(stringlinkText,stringactionName,stringcontrollerName)//页面显示linkText指向controllerName对应的Controller的actionName方法(3).ActionLink(stringlinkText,stringactionName,objectroutues,objecthtmlAttributes)//页面显示linkText指向Global.asax.cs中默认的Controller对象的actionName方法,并且传递参数给action方法(以匿名类型的名称/值对的方式来实现),并设置页面链接的属性htmlAttributes。1.1基本的使用方式在UrlRouting规则为默认规则的情况下,它生成的HTML代码为1:ahref=/这是一个连接/aActionLink中的三个参数分别为显示的文字ActionController其中Controller可以省略,省略时指向同一Controller下的Action。1.2ActionLink中QueryString与Html属性设置1:带有QueryString的写法2:%=Html.ActionLink(这是一个连接,Index,Home,new{page=1},null)%3:%=Html.ActionLink(这是一个连接,Index,new{page=1})%4:有其它Html属性的写法5:%=Html.ActionLink(这是一个连接,Index,Home,new{id=link1})%6:%=Html.ActionLink(这是一个连接,Index,null,new{id=link1})%7:QueryString与Html属性同时存在8:%=Html.ActionLink(这是一个连接,Index,Home,new{page=1},new{id=link1})%9:%=Html.ActionLink(这是一个连接,Index,new{page=1},new{id=link1})%其生成结果为:1:带有QueryString的写法2:ahref=/?page=1这是一个连接/a3:ahref=/?page=1这是一个连接/a4:有其它Html属性的写法5:ahref=/?Length=4id=link1这是一个连接/a6:ahref=/id=link1这是一个连接/a7:QueryString与Html属性同时存在8:ahref=/?page=1id=link1这是一个连接/a9:ahref=/?page=1id=link1这是一个连接/a这样就可以使用ActionLink生成近乎所有的地址连接了。注意,如果连接中不涉及到action及controller就没有必要使用ActionLink,而是直接写HTML代码就可以了,例如1:ahref=#1一章/a2:ahref=javascript:void(0)onclick=delete();删除/a2.RouteLink2.1与ActionLinkRouteLink与ActionLink相差无几,只是它的地址是由Ro
本文标题:@Html的用法
链接地址:https://www.777doc.com/doc-3544083 .html