关于AJAX应用所解决的一些常见问题

ajax|解决|问题

    不可否认,我是非常看好AJAX技术的。我以为AJAX技术对于互联网,就像HTML对于互联网一样。但同时又要看到,AJAX技术不能完全取代我们常规的WEB开发技术。AJAX技术有它让人眼睛一亮的优点,同时它也有很多弱点。

我们作为开发人员,不能因为AJAX技术好,就在WEB开发中全部使用AJAX。
     对了,不能为了AJAX而AJAX,就像钢要用到刀刃上一样,AJAX应该用在能充分发挥它的优点的地方。而大多数的时候,我们还需要和往常一样,使用MVC的实现STRUTS开发框架。

     提到AJAX,不能不提到与它一起被强调的另一个词:用户体验。AJAX丰富了B/S模式的表现层,对于B/S模式的UI来说,它号称没有做不到、只有想不到。这里说来说去,都是一个用户体验的问题。AJAX号称无刷新,其实很多时候,用户需要有刷新才能知道有了页面提交,如在保存数据的时候,所以在这个时候使用AJAX却有害于用户体验的。

     那么在什么时候可能使用到AJAX呢?第一、请求的提交是为了页面数据的显示,这时候用户一般不希望看到页面的刷新,是使用AJAX的一个最佳时候。第二、如果请求提交后,用户能从页面感觉到提交结果,这时候,也最好不要有页面刷新,推荐使用AJAX技术。第三、如果请求提交后,用户不能从页面感觉到提交动作,如绝大多数时候的数据的增加和修改,这时候则需要页面刷新,不能使用AJAX技术。第四、复杂的UI,以前对于复杂的C/S模式的UI,B/S模式一向采取逃避的方法,现在则可以放心大胆的使用AJAX来加以解决。

     AJAX技术的实践,就像有了魔法一样,一旦你使用了一次,就会爱不释手。面对精彩的AJAX技术,还等什么?赶快看看您的WEB应用里,有没有下列问题之一,如果有的话,不妨用AJAX试试看!

     第一、输入值校验的问题。

     输入校验是我们经常遇到的问题,这种问题很多时候是可以在JS里解决。但有些时候却需要访问后台,如在申请用户的时候检查用户名是否重复等等问题。用AJAX吧,页面不会有刷新。

    第二、级联显示的问题。

  这种问题应该是我们遇到的最多的表现层的问题,常常让我们左右为难:你说访问后台吧,页面需要刷新,用户体验很不好;你说用JS解决吧,确实有点让JS勉为其难,强行用JS解决了,代码一大堆不说,数据量大的话还会有内存问题,而且数据也不安全。

  这类的问题很多:最常见的是级联的两个或更多的选择框,还有选择框的变形,级联菜单,导航树等等。

  遇到了这一类的问题,赶快行动吧!用AJAX访问后台,既不需要刷新页面,也没有过多的JS代码,一举两得。

     第三、请求结果只改变部分页面。

     这一类的问题我们也会时常碰到,如,论坛的回复帖子和帖子列表在一个页面上的时候。这两个UI在一个页面上,用户体验比回复帖子在另外一个页面好。但回复后要对整个页面进行刷新,这种感觉就不好了。你看,那么大一个帖子列表,只增加你的一个回复,却要对整个页面进行刷新,不管从哪个角度来看都不好。

     这一类的问题不管是用户体验,还是从技术的角度来讲,都是使用AJAX最好不过。

     第四、由于技术原因而使用iframe的问题。

     Iframe的问题纯粹是由于技术的原因引起的。为了解决技术问题而引入iframe,却iframe的一再嵌套却又引入了其他的技术难题。有的想尽办法来勉强解决这个问题,有的却干脆不要使用iframe。不使用iframe,而使用JS的解决方法却是繁琐的。现在不用左右为难了,使用AJAX就是最好的解决方案。

     第五、数据录入和列表显示在同一个页面。

     C/S模式的UI中常常有数据录入和数据列表显示在同一个界面上,这样对于用户来说有很好的用户体验,用户录入的结果马上就能在同一界面显示。但是在B/S的UI上,由于需要提交刷新的问题,我们经常把数据的录入和数据显示分别放在两个不同的页面上。很显然,这样的用户体验肯定没有C/S模式来得好。像这样的问题还有很多,在B/S模式下,都因为技术的原因而选择其他的解决办法。现在我们可以自豪的使用AJAX来宣告可以做出和C/S模式一样复杂的UI了。

     第六、翻页问题。

     如果有技术可以使翻页不需要刷新,你愿不愿意尝试一下呢?有很多这样的数据显示的问题需要刷新哦,考虑一下AJAX!

时间: 2024-12-22 16:11:34

关于AJAX应用所解决的一些常见问题的相关文章

AJAX应用所解决的一些常见问题

ajax|解决|问题 不可否认,我是非常看好AJAX技术的.我以为AJAX技术对于互联网,就像HTML对于互联网一样.但同时又要看到,AJAX技术不能完全取代我们常规的WEB开发技术.AJAX技术有它让人眼睛一亮的优点,同时它也有很多弱点.我们作为开发人员,不能因为AJAX技术好,就在WEB开发中全部使用AJAX.     对了,不能为了AJAX而AJAX,就像钢要用到刀刃上一样,AJAX应该用在能充分发挥它的优点的地方.而大多数的时候,我们还需要和往常一样,使用MVC的实现STRUTS开发框架

jquery ajax跨域解决方法介绍

 本篇文章只要是对jquery ajax跨域解决方法(json方式)进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 最近公司开发的项目中很多地方需要跨域ajax请求,比如几个子域名下  http://a.****.com/index123.aspx,  http://b.****.com/index2.aspx    都要请求用户json信息,然后再对数据进行处理,起初我和同事们试了很多种方法,使用$.ajax() 无论是get或post方法都会引起uri deny的错误.一番GG之后

ajax中文乱码解决方法总结

ajax乱码解决办法一: 在服务器指定发送数据的格式: 在jsp文件中: response.setContentType("text/text;charset=UTF-8");//返回的是txt文本文件 或是 response.setContentType("text/xml;charset=UTF-8");//返回的xml文件 PHP:header("Content-Type:text/html;charset=GB2312"); ajax乱码

ajax中文乱码解决

ajax|解决|中文|中文乱码 解决AJAX传送中文会导致乱码的问题 //如果传送参数是直接赋予的,就会产生乱码!http_request.open("POST",url,true); http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); http_request.send("action="+strName+"&val="+

jquery ajax跨域解决方法(json方式)_jquery

最近公司开发的项目中很多地方需要跨域ajax请求,比如几个子域名下 http://a.****.com/index123.aspx, http://b.****.com/index2.aspx 都要请求用户json信息,然后再对数据进行处理,起初我和同事们试了很多种方法,使用$.ajax() 无论是get或post方法都会引起uri deny的错误.一番GG之后发现了解决方法,也了解其中的原因. jquery从1.2开始,.getJSON就支持跨域操作了.使用jquery.getJSON()方法

【Ajax技术】解决XHR与中文乱码问题

还是我们那个测试ajax的应用(服务端的Servlet.静态页面的html与实现ajax的javascript脚本文件) 服务端的Servlet import java.io.IOException; import java.io.PrintWriter; import java.net.URLDecoder; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.se

AJAX中文乱码解决新方法分享_AJAX相关

用过AJAX的朋友肯定知道javascript是使用UTF-8国际编码,即每个汉字用3个字节来存储,但是这就造成了用AJAX来send数据的时候出现乱码.     有一种解决办法就是使用encodeURIComponent加上修改 Content-Type 为 application/x-www-form-urlencoded" 来把数据统一编码成 url 格式,但是这样做有一个弊端,使用php的urldecode根本不能得到正确的文字.     另一种方法就是通过vbscript 的写的函数把

服务器上IIS6不支持AJAX脚本如何解决

问题描述 我做了一个文件上传,利用AJAX实现进度条,在本地上没事,上传到服务器上就不行了,具体代码如下所示:load.aspx页面代码:<scripttype="text/javascript">functionajaxGet(){$.post("UpLoadHandler.ashx",{date:newDate()},function(data){varnum=parseInt(data);varobj,Mywidth,curwidth,divwid

用 ajax 的方法解决网页广告显示的问题_AJAX相关

有的时候google或者其他广告显示不出来,造成页面访问速度奇慢,怎么样解决这个问题呢?我们可以借用AJAX的方式来做一下: 在原位置放置以下代码: 〈div id="GoogleAD"〉〈/div〉 在 html 最后(〈/body〉前)加上:     〈div id="tempGoogleAD" style="display:none;"〉     〈script type="text/javascript" src=&q