C#中TextBox设置readonly不能读取数据问题

在ASP.NET中前端设置控件TextBox的属性为Readonly="True"时,如果之前有设定初始值,或通过JS方式给其赋值后,在后台访问其Text值却无法获取,这种问题的解决方式有三种。

一、使用JS方式实现禁止编辑的目的

具体方法见我另外一篇博文(法三和法四):https://www.cnblogs.com/HymanWesteros/p/12118990.html

二、后台通过Request来取值

前端代码:

<asp:TextBox ID="TextBox1" runat="server" ReadOnly="True" ></asp:TextBox>

后台代码:

string Text = Request.Form["TextBox1"].Trim();

三、在后台设置ReadOnly属性

一般而言,在初始化页面Page_Load()方法中设置控件的属性即可,与在前端设置的效果一致,但是在后台也可以读取数据。

前端代码:

<asp:TextBox ID="TextBox1" runat="server" ></asp:TextBox>

后台代码:

TextBox1.Attributes.Add("readonly","true");
 

猜你喜欢

转载自www.cnblogs.com/HymanWesteros/p/12131403.html