欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Ajax 程序开发中常见问题

程序员文章站 2022-03-14 10:40:27
1.ajax,action中response返回的xml文档格式错误时,eclipse debug进入不到action中. 2.ajax缓存问题,需要加入xmlhttp.s...
1.ajax,action中response返回的xml文档格式错误时,eclipse debug进入不到action中.
2.ajax缓存问题,需要加入xmlhttp.setrequestheader(”if-modified-since”,”0″);便可解决.
3.如果不是ajax提交,而设置了printwriter out = response.getwriter();则jsp会产生中文乱码.
4.ajax返回xml乱码的原因
response.setcontenttype(”text/xml;charset=gbk”);
printwriter out = response.getwriter();
这样才起作用,如果这样:
printwriter out = response.getwriter();
response.setcontenttype(”text/xml;charset=gbk”);
那么response.setcontenttype(”text/xml;charset=gbk”);就不起作用了所以返回是乱码,这个问题搞了很久,代码还得仔细看啊.
5.ajax表单提交
xmlhttp.setrequestheader(”content-type”,”application/x-www-form-urlencoded”);
由于传过去的是utf-8编码的,所以在action 或servlet中接受时要进行相应转码
6. 动态页的客户端网页缓存ajax不运行
在做注册程序验证码用户名是否可用、在线上传文件、删除文件、投票程序等不需要刷新网页即可出现结果的程序的时候,可能需要用到ajax。其原理是javascript通过onchange、onclick、onmouseout等事件取读网页当前的一些用户操作的数据,然后将这个数据传送给一个动态网页进行处理。

ajax调用的动态页,应该要让这个动态页不载入客户端的缓存。同理,blog的trackback程序,经常无法接收信息,可以尝试在trackback程序的动态页写入前使其不写入缓存的语句。

另外,也可以程序代码
+math.random();
使得每次提交一个随机数来避免客户端缓存。