关于xmlhttp.responseText的问题

wolfknight00 2012-03-01 11:28:32
<script type="text/javascript">
var xmlhttp;
function AJAX(url){

xmlhttp=null;
if (window.XMLHttpRequest){// code for all new browsers
xmlhttp=new XMLHttpRequest();
}else if (window.ActiveXObject){// code for IE5 and IE6
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null){
xmlhttp.onreadystatechange=state_Change;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}else{
alert("你的浏览器不支持XMLHTTP对象。");
}
}
function state_Change(){
if (xmlhttp.readyState==4){// 4 = "异步请求成功"
if (xmlhttp.status==200){// 200 = OK
var o = document.getElementById("left");
var str = xmlhttp.responseText;
//o.innerHTML = str;
alert(str);
o.src = str;
}else{
alert("服务器出错,异步请求失败!");
}
}
}

</script>
</head>
<body>
<a href="javascript:void(0);" onClick="AJAX('redraw.php?id=a');">我是A链接</a>
<a href="javascript:void(0);" onClick="AJAX('redraw.php?id=dsa');">我是B链接</a>
<iframe src="" id="left" name="left" width="520" height="750" frameborder="0" scrolling="yes" style="position: absolute; top: 40px;left: 1px;"></iframe>

redraw.php

$id = $_GET["id"];
switch($id){
case "a":
echo "aaa";
break;
case "dsa":
echo "bbb";
break;
default:
"搞砸了!";
}
为什么 alert(str); 会把整个html的代码输出
...全文
342 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wolfknight00 2012-03-02
  • 打赏
  • 举报
回复
问题已解决,谢谢大家!结贴
华华果果 2012-03-02
  • 打赏
  • 举报
回复
你的response 要set 它的contextType 为html/text 否则返回的就是带html 代码的数据
wolfknight00 2012-03-01
  • 打赏
  • 举报
回复
刚发现redraw.php包含了一个html文件,怎么样才能只返回 echo 的值
Acesidonu 2012-03-01
  • 打赏
  • 举报
回复
返回的就是解析后的redraw.php

wolfknight00 2012-03-01
  • 打赏
  • 举报
回复
顶!!!!谁来帮看一下
wolfknight00 2012-03-01
  • 打赏
  • 举报
回复
HTML能不能过滤掉?去掉又会产生别的错误
jumpheightway 2012-03-01
  • 打赏
  • 举报
回复
把html去掉,只有echo的内容就行了

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧