ASP.NET之使用Ajax实现页面异步刷新(无需刷新整个页面)

时间:2022-01-17 15:25:19

目前在使用ASP.NET技术做毕业设计,但是关于网页中的各种配置我到现在还不是很清楚,正在努力进化...

一般情况下,新建网页页面的话,应该为.aspx后缀的文件,建好之后对应一个同名的.cs文件,属于后端文件。在这种情况下aspx页面负责显示网页的前端,cs文件负责网页的逻辑处理(及后台),然而,在页面中嵌入javascript也是可以处理相关逻辑的。所以,当遇到一种情况:不需要前端页面,只有后台代码,它(服务器端即后台)只用来对客户端的的请求做出相应,但这种响应不是跳转一个新的页面,而仅仅是刷新原页面的部分数据,这就要用到异步刷新技术(Ajax),属于javascript的范畴。

ASP.NET有一种机制叫做ScriptManager(UpdatePanel),用来管理Ajax对象,但是我还没搞明白。现在我只明白一种:就是通过建立一个.ashx(一般处理文件,属于后台)来处理从其他页面传来的请求,一般只能接受一个/一种页面的请求。

下面两个文件分别是HtmlPage_ForTestUse.html和Handler_ForTestUse.ashx,这两个文件前者是前端文件,后者就是一个处理文件。当我们遇到不需要使用.aspx页面这种较复杂的动态页面时,html静态页面正好解决的这个小问题,避免了.aspx和.cs文件的庞大冗余,也解决了异步刷新。

ASP.NET之使用Ajax实现页面异步刷新(无需刷新整个页面)

====================================

ASP.NET之使用Ajax实现页面异步刷新(无需刷新整个页面)

另外,我的GET和POST两种请求方式的理解:

GET方式:在地址栏中直接输入地址访问一个页面(无论是否携带参数)是GET方式;提交表单时,表单对应的form元素没有设置method方式或者method设置为GET方式,是GET方式。特点:GET方式请求的参数和值会被转换成字符串附加在原url之后,且传送数据量小,不能大于2KB。

POST方式:通过表单提交,设置form的元素为POST。特点:传送数据量大,请求参数在html header中传输,地址栏没有数据,相对安全。