我编了如下代码:
<script>
var myXhr=new XMLHttpRequest();
if( window.XMLHttpRequest )
{ alert('ok1'); myXhr=new XMLHttpRequest(); }
else if(window.ActiveXObject)
{ myXhr=new ActiveXObject("Microsoft.XMLHTTP");alert('ok2')}
else { alert("AJAX错误"); }
myXhr.open('get','data1.html',false);
myXhr.send(null);
document.getElementById('b').innerHTML=myXhr.responseText;
</script> 程序可以正确运行
但是我在最后一个else里面添加了一句 return false;即:
<script>
var myXhr=new XMLHttpRequest();
if( window.XMLHttpRequest )
{ alert('ok1'); myXhr=new XMLHttpRequest(); }
else if(window.ActiveXObject)
{ myXhr=new ActiveXObject("Microsoft.XMLHTTP");alert('ok2')}
else { alert("AJAX错误"); return false; }
myXhr.open('get','data1.html',false);
myXhr.send(null);
document.getElementById('b').innerHTML=myXhr.responseText;
</script>
程序就不能正确运行 理论上应该不会进入最后一个else语句啊 请问一下高手 这是怎么回事?
------解决方案--------------------
你确定 错误是 因为 加了 "return false"
------解决方案--------------------
var myXhr=null;
if( window.XMLHttpRequest )
{ amyXhr=new XMLHttpRequest(); }
else if(window.ActiveXObject)
{ myXhr=new ActiveXObject("Microsoft.XMLHTTP");}
alert(myxhr);
你换上这段试试 ,如果还有问题,就肯定是后面代码的问题了
------解决方案--------------------
函数中才能return false,明显的语法错误
- JScript code
function callajax() { var myXhr = new XMLHttpRequest(); if (window.XMLHttpRequest) { alert('ok1'); myXhr = new XMLHttpRequest(); } else if (window.ActiveXObject) { myXhr = new ActiveXObject("Microsoft.XMLHTTP"); alert('ok2') } else { alert("AJAX错误"); return false; } myXhr.open('get', 'data1.html', false); myXhr.send(null); document.getElementById('b').innerHTML = myXhr.responseText; } callajax()