当前位置:编程学习 > C#/ASP.NET >>

服务器端怎么知道TextBox的值有没改变

有一个问题,
在asp.net页面里有一个TextBox文本框控件,并注册了TextChanged事件和设置了属性为True,当我输入文本时,没有触发TextChanged事件,单鼠标焦点离开TextBox,TextChanged事件触发。
把焦点放回TextBox中,再移开焦点,TextBox的值没改,也没触发TextChanged事件。

现在问题是,服务器端怎么知道TextBox的值有没改变?? --------------------编程问答-------------------- LZ想干嘛,没明白意思 --------------------编程问答-------------------- 查看页面源文件有一段js:
<script src="/WebResource.axd?d=gXRfU6fFeSlx_KcgczQhIA2&t=634056351964062500" type="text/javascript"></script>

保存页面,全部内容,可以查到WebResource.axd,里面的内容就是你想要的,去分析吧。 --------------------编程问答-------------------- 直到焦点(不是鼠标焦点)离开TextBox才会引发TextChanged事件...因为Web控件频繁回发显然会影响性能且用户体验不佳...

改用js脚本提交或改用ajax控件... --------------------编程问答-------------------- 服务器端当然不知道这些变化,
是客户端先判断了,
而这些是封装好的,
楼主如果感兴趣也可以自己利用js+input控件实现这种效果 --------------------编程问答--------------------
引用楼主 gb198871 的回复:
现在问题是,服务器端怎么知道TextBox的值……

是否changed是由客户端的javascript判断的,而不是由服务器端判断的(当然服务器端也有办法知道初始化时的值与现在的值是否发生了改变)

而且asp.net页面自动回发,也是基于javascript来回发到服务器端.

--------------------编程问答-------------------- 失焦点的时候javascript判断 --------------------编程问答-------------------- viewstate --------------------编程问答-------------------- 这就是微软控件NB的地方。。。。 --------------------编程问答-------------------- 前台判断的话用JS,后台判断需要用Ajax --------------------编程问答-------------------- 值没改变,不会触发后面的事件吧 --------------------编程问答--------------------
引用 2 楼 yasire 的回复:
查看页面源文件有一段js:
<script src="/WebResource.axd?d=gXRfU6fFeSlx_KcgczQhIA2&amp;t=634056351964062500" type="text/javascript"></script>

保存页面,全部内容,可以查到WebResource.axd,里面的内容就是你想要的,去分析吧。


对的对的,谢谢!! --------------------编程问答-------------------- 移开焦点> js判断,如果改变了就回发调用后台事件,如果没改变就不动

个人是这样理解的--里面具体的处理都被封装了!
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,