Asp.Net 4.0 新特性,输出更纯净的Html代码 ClientIDMode,ViewStateMode等


======================================================
注:本文源代码点此下载
======================================================

1. 在asp.net 4.0 中我们可以控制输出html中的对象id的形式了,之前我们常常看到类似这样的id

ctl00_maincontent_txtautoid

这在客户端控制时很不方便,也没有多少实质的意义

现在我们可以通过设置控件的clientidmode修改clientid的输出形式,例如下面代码:

?

1

2

3

4

asp:textbox id="txtpredictable" runat="server" clientidmode="predictable">asp:textbox>

asp:textbox id="txtautoid" runat="server" clientidmode="autoid">asp:textbox>

asp:textbox id="txtinherit" runat="server" clientidmode="inherit">asp:textbox>

asp:textbox id="txtstatic" runat="server" clientidmode="static">asp:textbox>

将分别输出

?

1

2

3

4

input name="ctl00$maincontent$txtpredictable" type="text" id="maincontent_txtpredictable" />

input name="ctl00$maincontent$txtautoid" type="text" id="ctl00_maincontent_txtautoid" />

input name="ctl00$maincontent$txtinherit" type="text" id="maincontent_txtinherit" />

input name="ctl00$maincontent$txtstatic" type="text" id="txtstatic" />

autoid: 自动输出和之前版本输出的clientid一样

static:输出和server端指定的id一样的id

predictable:对于datagrid,listview特别有用,使clientid值格式象clientidrowsuffix一样;

inherit:这个值指定控件象它的父对象一样产生id,即我们常说的继承。

2. asp.net4.0 提供了一个叫做 viewstatemode 的新属性,这个属性可以单独设置控件的视图状态。在以前版本的 asp.net 中,控件的视图只有在 page 的 viewstate 启用的前提下才可以单独控制。在 asp.net4.0 中,控件的视图状态可以单独设置了,也就是说,即使页面的视图状态没有启用,控件依然可以启用视图状态。

viewstatemode 属性有三种取值:

inherit:视图状态从父控件继承;

enabled:即使父控件的视图状态没有启用,也启用该控件的视图状态;

disabled:即使父控件的视图状态启用了,也禁用此控件的视图状态。

3. checkboxlist和radiobuttonlist,以及menu控件都支持使用ul或者ol输出html,这个很简单知道有这么回事,用的时候去用就好了

转自:http://www.cnblogs.com/yukaizhao/archive/2010/05/22/asp-net-new-feature-pure-html.html


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值