中国站长下载-为中国站长提供最好最全的建站资源! 首 页发布资源有事留言繁體中文
设为首页
加入收藏
联系我们
 
您当前的位置:中国站长下载 -> 文章中心 -> 网页编程 -> .NET编程 -> 文章内容  虚拟主机 域名注册 退出登录 用户管理
栏目导航
· ASP编程 · .NET编程
· PHP编程 · JSP编程
· CGI 专区
热门文章
· sndvol32 - sndvol3...
· [组图] FLASH:《大话李白》...
· 个人网站到底能赚多...
· [图文] Rundll.exe是病毒吗...
· [组图] Flash:制作MV
· 价值12万元的网站SE...
· 网站创业者,你需要...
· 一个成功的网站设计...
· [图文] FLASH:韩国导航条解...
· 中国网站的赚钱模式...
相关文章
· .NET之ASP Web Appl...
· .NET之ASP Web Appl...
· .NET之ASP Web Appl...
· .NET之ASP Web Appl...
· .NET之ASP Web Appl...
· ASP 2.0 数据绑定函...
· 利 用 ASP 开 发 网...
· 用 ASP 技术开发 WE...
· ASP 指南
· ASP 中健壮的页结构...
ASP .NET中维持ViewState研究
作者:不详  来源:不详  发布时间:2006-8-14 9:36:02  发布人:chinazhan

 减小字体 增大字体

     在传统ASP中,当一个表单被提交的时候所有表单值都被清除。假设你提交了一个有很多信息的表单并且服务器返回一个错误。你不得不返回到表单并更正信息。你点击返回按钮,但是发生了什么……。所有表单值被清除了,你将不得不从头开始!站点没有维持你的ViewState。
  
    在ASP .net中提交一个表单的时候,表单与所有的表单值一起再现于浏览器窗口。怎么会这样?这是因为ASP .NET维持你的ViewState。ViewState指明页面被提交到服务器时的状态。该状态是通过在每个带有<form runat="server">控件的页面中安置一个隐含域来定义的。源文件可能看起来象是这样:
  
  <form name="_ctl0" method="post" action="page.aspx" id="_ctl0">
  <input type="hidden" name="__VIEWSTATE"
  value="dDwtNTI0ODU5MDE1Ozs+ZBCF2ryjMpeVgUrY2eTj79HNl4Q=" />
  .....some code
  </form>
  
    对ASP.NET Web表单维持ViewState是默认设置。 如果你想要不维持ViewState,可以在.aspx页面顶部包含指示:<%@ Page EnableViewState="false" %>,或者对任何控件加入属性:EnableViewState="false"。
  
    请看下面的.aspx文件。它演示了“老方式“的做法。当你点击提交按钮,表单值将会消失:
  
  <html>
  <body>
  <form action="demo_classicasp.aspx" method="post">
  Your name: <input type="text" name="fname" size="20">
  <input type="submit" value="Submit">
  </form>
  <%
  dim fname
  fname=Request.Form("fname")
  If fname<>"" Then
  Response.Write("Hello " & fname & "!")
  End If
  %>
  </body>
  </html>
  
    这是新的ASP .NET方式。当你点击提交按钮的时候,表单值将不消失:
  
  <script runat="server">
  Sub submit(sender As Object, e As EventArgs)
  lbl1.Text="Hello " & txt1.Text & "!"
  End Sub
  </script>
  <html>
  <body>
  <form runat="server">
  Your name: <asp:TextBox id="txt1" runat="server" />
  <asp:Button OnClick="submit" Text="Submit" runat="server" />
  <p><asp:Label id="lbl1" runat="server" /></p>
  </form>
  </body>
  </html>
  
    (在浏览器中选择查看源文件,会看到ASP .NET已经在表单中添加了一个隐含域来维持ViewState)。
  
    做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。

 
[] [返回上一页] [打 印] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
中国站长下载
中国站长下载

本页只接受PR>=4 IT类站点连接,申请连接,谢谢您们的支持!希望我们的下载站能够真正帮到中国的站长们!
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图
Copyright © 2005-2006 ChinaZhan.Net. All Rights Reserved .