首页 > Web开发 > 详细

ASP.Net TextBox只读时不能通过后台赋值取值

时间:2014-12-14 17:10:15      阅读:480      评论:0      收藏:0      [点我收藏+]
给页面的TextBox设置ReadOnly="True"时,在后台代码中不能赋值取值,下边几种方法可以避免:

1、不设置ReadOnly,设置onfocus=this.blur()

C#代码 bubuko.com,布布扣
  1. <asp:TextBox ID="TextBox1" runat="server" onfocus=this.blur()></asp:TextBox>  
  1. <asp:TextBox ID="TextBox1" runat="server" onfocus=this.blur()></asp:TextBox>  
<asp:TextBox ID="TextBox1" runat="server" onfocus=this.blur()></asp:TextBox>


文本框不变灰色,但也无法手动修改内容,可以在后台通过Text属性正常赋值取值

2、设置了ReadOnly属性后,通过Request来取值,如下:

前台代码:
C#代码 bubuko.com,布布扣
  1. <asp:TextBox ID="TextBox1" runat="server" ReadOnly="True" ></asp:TextBox>  
  1. <asp:TextBox ID="TextBox1" runat="server" ReadOnly="True" ></asp:TextBox>  
<asp:TextBox ID="TextBox1" runat="server" ReadOnly="True" ></asp:TextBox>


后台代码:

C#代码 bubuko.com,布布扣
  1. string Text = Request.Form["TextBox1"].Trim();  
  1. string Text = Request.Form["TextBox1"].Trim();  
string Text = Request.Form["TextBox1"].Trim();


3、在Page_Load()正设置文本框的只读属性,能正常读取,如下:

C#代码 bubuko.com,布布扣
  1. protected void Page_Load(object sender, EventArgs e)   
  2. {   
  3.     if (!Page.IsPostBack)   
  4.     {   
  5.         TextBox1.Attributes.Add("readonly","true");   
  6.     }   
  7. }  

ASP.Net TextBox只读时不能通过后台赋值取值

原文:http://www.cnblogs.com/yzl495/p/4162684.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!