很简单的一个问题 哪位懂ajax的大侠帮我看一下这个xmlhttp怎么除了在IE5678下 别的浏览器总是取不出来呢

varxmlhttp=null;//初始值定为nullif(window.ActiveXObject){//如果是IE5678浏览器xmlhttp=newActiveXO... var xmlhttp = null; //初始值定为null
if(window.ActiveXObject){ //如果是IE5 6 7 8 浏览器
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest();
}
xmlhttp.onreadystatechange = function(){
alert(xmlhttp.readyState);//检测ajax的状态 ???这里为什么在IE5 6 7 8下面都会弹出 1 2 3 4 但是在IE9下面是不会有任何的弹出 而在其他浏览器中先弹出1 后不再弹出2和3 而是直接弹出4
if(xmlhttp.readystate==4 && xmlhttp.status==200){//判断
alert(xmlhttp.responseText);//弹出后台页面的传过来的内容
}
}

xmlhttp.open("POST","ajax_do.php",false);//异步请求

xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send("user=传过去的姓名&age=22&address=传过去的地址");//传参
在另一个页面是这样写的:
<?php
$str = $_GET?implode("|", $_GET):implode("|", $_POST);
//echo "<script>alert('数据已经传过来了');</script>";
echo $str;
?>

为甚麽 哪位大侠懂得 求解 感激不尽啊
展开
 我来答
手机用户32645
2011-09-09 · TA获得超过421个赞
知道小有建树答主
回答量:459
采纳率:100%
帮助的人:299万
展开全部
首先你了解ajax是什么
你就不会问这样的问题了
ajax不要任何配置 因为基本所以浏览器都支持
xmlHttp对象和javascript

其实就是用javascript技术 在不刷新页面的情况下
更新网站部分内容的效果

弄本书看看就明白了

给你一个经典的ajax代码希望对你有帮助
一般人都这么写 修改参数就可以了
ajax.js 代码:

//定义XMLHttpRequest对象实例
var http_request = false;
//定义创建跨浏览器XMLHttpRequest方法
function ajax_call(url)
{
http_request = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest) { //Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {//设置MiME类别
//有些版本的浏览器在处理服务器返回的未包含XML mime-type头部信息的内容时会报错,因此,要确保返回的内容包含text/xml信息。
http_request.overrideMimeType("text/xml");
}
}
else if (window.ActiveXObject) { // IE浏览器
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
http_request.onreadystatechange =ajax_callback;//注意这里不用加括号
http_request.open("GET",url,true);
http_request.send(null);
}
/////////////////////处理函数////////////////////////
function ajax_callback() {
if (http_request.readyState == 4) { // 判断对象状态(4表示完成)
if (http_request.status == 200) { // 200 信息已经成功返回,开始处理信息
//这里面即是具体的处理代码
alert(http_request.responseText);
} else { //页面不正常
alert("您所请求的页面有异常。");
}
}
}
jiangsums
2012-10-25 · 超过13用户采纳过TA的回答
知道答主
回答量:53
采纳率:100%
帮助的人:12.5万
展开全部
浏览器兼容的话,
1, function() 这个关键词好用不?
2, xmlhttp.onreadystatechange = function() 貌似有说法是直接带括号这样写兼容不? 多写几个字吧。
3, php 如果出错了没有反映, alert 再好的戏也出不来

以上个人猜想
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式