Ajax 程序开发中常见问题
程序员文章站
2022-06-24 16:15: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();
使得每次提交一个随机数来避免客户端缓存。
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();
使得每次提交一个随机数来避免客户端缓存。
上一篇: 幽默的夫妻最恩爱!
下一篇: ajax实现分页和分页查询
推荐阅读
-
.Net WInform开发笔记(二)Winform程序运行结构图及TCP协议在Winform中的应用
-
小程序开发中如何使用async-await并封装公共异步请求的方法
-
iOS程序开发中设置UITableView的全屏分隔线的方法(不画线)
-
解决JSP开发中Web程序显示中文三种方法
-
使用设计模式中的Singleton单例模式来开发iOS应用程序
-
微信小程序云开发修改云数据库中的数据方法
-
解决微信小程序云开发中获取数据库的内容为空的方法
-
iOS程序开发中设置UITableView的全屏分隔线的方法(不画线)
-
.Net WInform开发笔记(二)Winform程序运行结构图及TCP协议在Winform中的应用
-
小程序开发中如何使用async-await并封装公共异步请求的方法