ASP.NET中的EnableViewState

EnableViewState属性的讲解:
  新建一页面,在页面中放一个DropDownList(把DropDownList的EnableViewState属性改为false)和一个Button,在Button_Click函数里面添加代码如下:
   protected void Button1_Click(object sender, EventArgs e)
    {
        DropDownList1.Items.Add("按钮添加一项");
    }
  我希望运行时点击Button会一直不断的添加,可实际情况如下:

 

无论点击多少次,都只有一项内容
这是因为把DropDownList的EnableViewState属性改为了false,把它改为true之后,再次运行就是我们想要的结果。。why????

是这样的,我们在浏览器页面中所填写的信息最终都会交给服务器处理,在客户端浏览器和服务器中间有一个_VIEWSTATE的一种机制,每次客户端向服务器发信息都要连同_VIEWSTATE里面保存的信息一起发给服务器,服务器接收到信息后然后处理。我们打开网页的"查看源"如下:



我们发现有个_VIEWSTATE这个东西,是隐藏的,当点击按钮之后再次查看这个,会发现valu的值变得长了,相信大家会猜到发生什么了吧,value里面保存了点击按钮之后给DropdownList添加的值,,换句话说,我们每次点击按钮时服务器都会从这个_VIEWSTATE里面接收客户端的信息,,,当把EnableViewState改为false时,每次刷新页面_VIEWSTATE没有保存客户端的信息,,恩,这样大家应该就会理解了吧,,哈哈哈,是不是很简单。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值