收藏的一个js ajax封装类
这个类摘自: ASP.NET Ajax典型应用 一书
xmlhttp.js
function $() {
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}
//------------------------------------------------------------------------------------------
//封装XMLHTTP的Request类的代码
var Request = new Object();
//定义一个XMLHTTP的数组
Request.reqList = [];
//创建一个XMLHTTP对象,兼容不同的浏览器
function getAjax()
{
var ajax=false;
try
{
ajax = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E)
{
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined')
{
ajax = new XMLHttpRequest();
}
return ajax;
}
//封装XMLHTTP向服务器发送请求的操作
//url:向服务器请求的路径;method:请求的方法,即是GET还是POST;callback:当服务器成功返回结果时,调用的函数
//data:向服务器请求时附带的数据;urlencoded:url是否编码;callback2;当服务器返回错误时调用的函数
Request.send = function(url, method, callback, data, urlencoded, callback2)
{
var req=getAjax(); //
相关文档:
Ajax添加数据之后,刷新前台页面,数据没有变化。
只有重新找开IE再输入地址,才能看到效果。
以上这些是不是缓存的原因啊?怎么解决?
ajax缓存问题解决途径:
1.在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数
加时间戳 var url = BaseURL + "&timeStamp=" ......
引自:http://www.cnblogs.com/dongritengfei/archive/2009/12/21/1628489.html
今天弄了一天的Ajax中文乱码问题,Ajax的乱码问题分为两种:
1. JavaScript输出的中文乱码,
比如:alert("中文乱码测试");
解决的办法比较简单,就是把jsp里所有的charset和pageEncoding的值都设置成相同的,一般是utf-8.
  ......
公司最近给我一个任务:把一个用iframe做的留言板改写用Ajax做,这样做的原因是:对搜索引擎的优化。虽然很早就知道Ajax可以做局部刷新,但因为自己是刚毕业入职的菜鸟,仅仅是知道有这么个技术可以做这样一功能而已。一边学一边做。现在这功能还没完全弄好,先总结下思路以便更好的学习:
业务逻辑:在线研讨会,提问者页 ......
function verify() {
//解决中文乱麻问题的方法1,页面端发出的数据作一次encodeURI,服务器段使用new String(old.getBytes("iso8859-1"),"UTF-8");
//解决中文乱麻问题的方法2,页面端发出的数据作两次encodeURI,服务器段使用URLDecoder.decode(old,"UTF-8")
var url = &qu ......