时间:2021-07-01 10:21:17 帮助过:49人阅读
- <br> <script language="javascript"> <br> var item=dynloadtree.default.getstr().value;//ajax调用后台方法 <br> alert(item); <br> </script> <br> <br> 做好以上五步,咱们就基本实现了ajax页面不按f5的功能了。那它是怎样经由过程xmlhttp与服务器通讯的呢?运行后咱们可以看到html文件的源代码多了几行.ashx文件的缓存: <br><span><u></u></span> 代码如下:<pre class="brush:php;toolbar:false layui-box layui-code-view layui-code-notepad"><ol class="layui-code-ol"><li><br> <script type="text/javascript" src="/ajaxpro/prototype.ashx" </script> <br> <script type="text/javascript" src="/ajaxpro/core.ashx"</script> <br> <script type="text/javascript" src="/ajaxpro/converter.ashx"</script> <br> <script> type="text/javascript" src="/ajaxpro/dynloadtree.default,dynloadtree.ashx"</script> <br> <br> 实际上这些.ashx就是在上面第3步ajaxpro.utility.registertypeforajax注册ajax时自动将这些缓存添加到html文档</li></ol></pre>输出的。那这些文件是什么文件呢?再看第2步中在web.config中添加到httphandlers节中的配置,它告诉系统凡是收到ajaxpro路径下已经ashx为后缀的请求就全数交给ajaxpro.ajaxhandlerfactory这个类来处理,而这些ashx经过处理后返回的就是一些javascript文件,和普通的js缓存没有实质区别。 <br> 好了,我就说这么多了,如果你们感兴趣的话可以去研究上面每一个.ashx文件里面的函数,唉,我是没时间弄了,网上也有很多关于这方面的资料,还有牛X的人直接把ajaxpro.2.dll反编译,大家也可以去看看里面的代码,也许会更有收获了,呵呵…… <br>PS:Tandy Tang祝大家写代码写的愉快!