选择显示字体大小

asp.net 2.0中使用hiddenfield控件(1)

     hiddenfield控件顾名思义就是隐藏输入框的服务器控件,它能让你保存那些不需要显示在页面上的且对安全性要求不高的数据。也许这个时候应该有这么一个疑问,为什么有了viewstate、session和cookie等状态保存机制,还需要用起hiddenfield呢?
  
    增加hiddenfield,其实是为了让整个状态管理机制的应用程度更加全面。因为不管是viewstate、cookie还是session,都有其失效的时候,比如用户因某种需求要求设置viewstate为false,或者环境条件限制使用cookie,或者用户长时间没有动作导致session过期等等,那这个时候hiddenfield无疑是最佳选择。
  
    hiddenfield控件的作用简单的说是用于存储需要在向服务器的发送间保持的值。它作为 <input type= "hidden"/> 元素呈现,并且通过添加runat=”server”就可以使它成为标准的html服务器控件。下面列出的是asp.net hiddenfield web服务器控件可以使用的属性和事件。
  
  <asp:hiddenfield
   enabletheming="truefalse"
   enableviewstate="truefalse"
   id="string"
   ondatabinding="databinding event handler"
   ondisposed="disposed event handler"
   oninit="init event handler"
   onload="load event handler"
   onprerender="prerender event handler"
   onunload="unload event handler"
   onvaluechanged="valuechanged event handler"
   runat="server"
   skinid="string"
   value="string"
   visible="truefalse"
  />
  
    因为 hiddenfield 的值将呈现给客户端浏览器,所以它不适用于存储安全敏感的值。若要为 hiddenfield 控件指定值,请使用 value 属性,请注意是value而不是text。事实上hiddenfield并没有text属性,这和dropdownlist、checkboxlist等标准按钮的属性命名方式一致。在标准的属性命名方式中,text的值是呈现给用户看到的,而value的值则是通长是通过代码进行控制的。例如你可以让dropdownlist的text属性显示用户名而让它的value存储用户的编号。
  
    下面的代码显示的是改控件的基本使用。
  
  <html
  <head>
  <script language="c#" runat="server">
  void button1_click(object sender, eventargs e)
  {
   if (hiddenfield1.value == string.empty)
    hiddenfield1.value = "0";
  
    hiddenfield1.value = (convert.toint32(hiddenfield1.value)+1).tostring();
    label1.text = hiddenfield1.value;
  }
  </script>
  </head>
  <body>
  <h3><font face="verdana">hiddenfield</font></h3>
  <form runat=server>
  <asp:hiddenfield id=hiddenfield1 runat=server />
  <asp:button id=button1 text="单击按钮" onclick="button1_click" runat="server" />
  单击 <asp:label id=label1 text="0" runat=server /> 次
  </form>
  </body>
  </html
  
    在上面代码中, <asp:hiddenfield id=hiddenfield1 runat=server />就定义了一个隐藏控件在按钮的单击事件里计算用户单击的次数,并将改次数赋值给label1。
  
    你可以将上面代码中的 <asp:hiddenfield id=hiddenfield1 runat=server />改为<input type=hidden id=hiddenfield1 runat=server >也是可以的
  
    在使用上面代码里,如果你从浏览器里查看源代码会得到如下的信息:
  
  <form name="form1" method="post" action="default.aspx" id="form1">
  
    这是因为hiddenfield是通过http协议进行传递数据的,所以如果你通过" method="get"或者链接打开新的窗体页,那么hiddenfield并不可用。
  
    另外,hiddenfield并不是取代session来维护状态的,在上面例子里,虽然你点击一次按钮可以显示你点击的次数但是并不是说它可以记录你的状态信息。如果你重新打开浏览器那么你看到的此处仍然是0而不是3。
  
  
    


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons