Cha*_*adD 3 javascript asp.net
我在客户端上使用Javascript来更新ASP文本框控件,该控件呈现为HTML文本框.
当我尝试访问服务器上的文本框控件中的值时,我并不太惊讶TextBox的更新值无法通过TextBox服务器控件的普通Text属性访问,因为该值的状态,我假设是可能在ViewState中保存,服务器不知道客户端脚本已经更改了它.
是使用以下内容获取更新值的最佳方法:
的Request.Form(TextBox.UniqueID)?
我怀疑因为文本框填充在GridView控件的一行中,并且在运行时在执行DataBind时添加了行,所以我可能会得到与在设计时在控件上绘制TextBox不同的结果.
我确认客户端可以通过以下方式访问文本框中的值:
Request.Form( CType(Row.Cells.Item(4).FindControl("txtTotal"), TextBox).UniqueID)
Run Code Online (Sandbox Code Playgroud)
但无法通过此访问:
CType(Row.Cells.Item(4).FindControl("txtTotal"), TextBox).Text
Run Code Online (Sandbox Code Playgroud)
后者返回一个空字符串.
我认为这两行代表了整个故事.
当你认为它们返回不同的结果时,有两个属性来获取文本框的值,甚至更丑,这似乎很难看.
有没有更好的方式或者这只是客户端的发展?
当人们说现在的web开发和客户端(例如winform)应用程序一样简单,现在ASP.NET跟踪状态时,我总是感到惊讶.对我而言,Web开发总是更加复杂和昂贵,但我承认在Web开发方面并不熟练.
您是否有机会将文本框标记为"只读"然后尝试进行更新?
http://aspadvice.com/blogs/joteke/archive/2006/04/12/16409.aspx
服务器会忽略任何更新 textbox1.ReadOnly=true;
| 归档时间: |
|
| 查看次数: |
3840 次 |
| 最近记录: |