xmlhttp.responseText可以alert却不能innerHTML 本帖最后由 speed4 于 2010-01-20 17:00:42 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你尝试使用innerText 错误ajax用法,好好看看书去吧. 现在是探究alert跟innerHTML,我是来求教的,不是来看书的! 经测试无效,且跟innerHTML一样没有抛出错误。 <script>function xmlhttp(url){ if(window.ActiveXObject){var xml=new ActiveXObject("Microsoft.XMLHTTP");} else if(window.XMLHttpRequest){var xml=new XMLHttpRequest();} xml.open("GET",url,false); xml.send(""); return xml.responseText; } function quote(){ var list="sh600033" eval(xmlhttp("http://hq.sinajs.cn/list="+list)); var arr=eval("hq_str_"+list).split(","); var t;for(var i=0;i <arr.length;i++){ document.body.innerHTML+=arr[i];} } //window.onload=quote(); </script><html><body><input type="button" value="button" onclick="quote();"></body></html>这样子就行了 或者这样<html><body onload="quote();"></body></html> 楼上的方法抛出错误,不过你提醒了我,我想我找到innerHTML不显示的原因了。 ie6行的,我刚才用ff和chrome试下来不行 xml.open("GET",url,false);问题出在这里,需要异步请求 document.body.innerHTML+=arr[i];这样是不行的,单独用一个字符串变量做这个累加的工作,完成后再赋值给innerHTML如:var str = "";for(var i=0;i <arr.length;i++){ alert(arr[i]); str +=arr[i]; } document.body.innerHTML = str; 关于addEventListener的使用 这里的this指针为什么是指向上一级调用者 求救 怎样可以检测到是否连接了ADSL上网? 如何释放对象?急 为了不让表格中的内容换行,用了这个属性table-layout:fixed ,但是单元格的宽度自动做了调整,怎么来控制宽度?? 这两个方法都可以实现,大家觉得哪个比较好? javascript 真有那么好吗??(在线) 新人问题求解 基于GEPlugin 的google earth 二次开发---加载多个kml文件 JS如何自动转换到局域网共享路径 document.body.offsetHeight
现在是探究alert跟innerHTML,我是来求教的,不是来看书的!
经测试无效,且跟innerHTML一样没有抛出错误。
function xmlhttp(url){
if(window.ActiveXObject){var xml=new ActiveXObject("Microsoft.XMLHTTP");}
else if(window.XMLHttpRequest){var xml=new XMLHttpRequest();}
xml.open("GET",url,false);
xml.send("");
return xml.responseText;
} function quote(){
var list="sh600033"
eval(xmlhttp("http://hq.sinajs.cn/list="+list));
var arr=eval("hq_str_"+list).split(",");
var t;
for(var i=0;i <arr.length;i++){
document.body.innerHTML+=arr[i];
} } //window.onload=quote();
</script>
<html>
<body>
<input type="button" value="button" onclick="quote();">
</body>
</html>
这样子就行了
<body onload="quote();">
</body>
</html>
var str = "";
for(var i=0;i <arr.length;i++){
alert(arr[i]);
str +=arr[i];
}
document.body.innerHTML = str;