javscript问题:if中的return无视if的条件总是执行

unionxd 2010-02-24 11:25:40
这是在一段php文件里的JavaScript代码:

var xmlHttp = GetXmlHttpObject();
if (xmlHttp == null) {
alert("您的浏览器不支持AJAX!");
return false;
}

此处的alert并未执行,但是return却执行了,导致后边的代码无法执行。
教程上就是这样写的,不知道是否可能是我其他地方有错?
...全文
111 8 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
  • 打赏
  • 举报
回复



<script>

function GetXmlHttpObject() {
var xmlHttp = null;

try {
xmlHttp = new XMLHttpRequest();
}
catch (e) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}

function aa(){
var xmlHttp = GetXmlHttpObject();
if (xmlHttp == null) {
alert("您的浏览器不支持AJAX!");
return false;
}
}
aa();

alert("Welcome!");
window.location.href="http://lastidea.net";
</script>
  • 打赏
  • 举报
回复
并不是执行了return false;而是到这里出错了. return必须在函数内部
unionxd 2010-02-24
  • 打赏
  • 举报
回复
完整代码:
function GetXmlHttpObject() {
var xmlHttp = null;

try {
xmlHttp = new XMLHttpRequest();
}
catch (e) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}

var xmlHttp = GetXmlHttpObject();
if (xmlHttp == null) {
alert("您的浏览器不支持AJAX!");
return false;
}

alert("Welcome!");
window.location.href="http://localhost/si-fi";
  • 打赏
  • 举报
回复
此处的alert并未执行,但是return却执行了.

呵呵,肯定不是这里alert出来的!换换alert出来的字符试试
孟子E章 2010-02-24
  • 打赏
  • 举报
回复
一般是你的代码错误导致的。调用的代码在对象定义不完整时可以继续执行。出现你说的现象只是一种错觉,
街头小贩 2010-02-24
  • 打赏
  • 举报
回复
总有这么些人断章取义
孟子E章 2010-02-24
  • 打赏
  • 举报
回复
GetXmlHttpObject定义的有问题
sohighthesky 2010-02-24
  • 打赏
  • 举报
回复
你在说笑吧,
贴完整代码吧
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2010-02-24 11:25
社区公告
暂无公告