JS给文本框赋值后,在页面后台取不到文本框值的解决方法
转自:http://www.cnblogs.com/qiaohd/archive/2012/03/23/2413660.html
(ReadOnly.disabled 都有可能造成取值取不到)
开发一个asp.net的页面遇到了TextBox设置了ReadOnly属性,在js中赋值后,后台代码取不到值的情况,经过在网上查找,找到了一下几个处理办法。
收藏起来。
1、不设置ReadOnly,设置onfocus=this.blur()
C#代码
<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来取值,如下:
前台代码:
<asp:TextBox ID="TextBox1" runat="server" ReadOnly="True" ></asp:TextBox>
<asp:TextBox ID="TextBox1" runat="server" ReadOnly="True" ></asp:TextBox>
后台代码:
string Text = Request.Form["TextBox1"].Trim();
string Text = Request.Form["TextBox1"].Trim();
3、在Page_Load()正设置文本框的只读属性,能正常读取,如下:
C#代码
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
TextBox1.Attributes.Add("readonly","true");
}
}
最新文章
- 生成n对括号的所有合法排列
- springMVC项目在jboss7中配置应用自己的log4j--转载
- JavaScript检测实例属性, 原型属性
- 有关Color和Drawable你所不知道的那些内容
- iTween visual Editor 0.6.1
- 几个检查当前运行的LINUX是在VM还是在实体机中的方法
- Linux系统编程(9)—— 进程之进程控制函数exec系列函数
- Linux笔记(二) - 权限管理
- shell群发邮件脚本
- FFT 专题讲解
- 翻译:JVM虚拟机规范1.7中的运行时常量池部分(一)
- 查找Mysql的安装路径
- Linux 用户组
- 2018湘潭邀请赛C题(主席树+二分)
- python核心语法
- 参数在一个线程中各个函数之间互相传递的问题(ThreadLocal)
- iOS.BackgroundTask
- 记录如何用abd,用电脑输出手机操作信号
- nsq多播分发和负载均衡实验
- [Math]PHI, the golden ratio