打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
JS修改服务端控件后,在服务端取值 .

转自:http://blog.csdn.net/zyaln/article/details/3464892

客户端用js改变asp.net控件的值,在服务器端不能直接用xx.Text获取到改变后的值,这是因为asp.net web页面数据是保存在ViewState里的,在客户端修改了内容,ViewSate没有修改。所以到服务器还是读旧数据。

1.

用<input type=hidden id="hd_value" runat="server"/>Hidden在客户端改变数据能在服务器端读到改后的数据。或者使用<asp:HiddenField ID="hfProductCategoryID" runat="server" /> 客户端改变var hfID="<%=this.hfProductCategoryID.ClientID %>" 服务端可以用hfProductCategoryID.Text取到
2.

string s1=Request.Form.Get(ddlProvince.UniqueID);
string s2 = Request[ddlProvince.UniqueID];
这样也可以取到,ddlProvince.UniqueID实际上就是ddlProvince在客户端的name属性值

假如服务器控件名为txtbox1,
VS2005中,可以这样取值:

string str = Request.Form[txtbox1.UniueID];

 转自:http://www.cnblogs.com/qiaohd/archive/2012/03/23/2413660.html

开发一个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"); 
    } 
}

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
JS给ASP.NET控件赋值
input中disabled提交后得不到值的解决办法及区别
.NET中获取服务器端控件的ID进行客户端编程
ASP.NET2.0中用Gridview控件操作数据
母板页、用户控件、视图状态
ASP.NET页面传值的方法和一些实用技巧
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服