javascript函数调用返回undefined,页面不断加载

时间:2015-12-18 04:50:34

标签: javascript

我有一个HTML代码如下

<!DOCTYPE html>
<html>
<body>
<button type="button" onclick="loadDoc()">ALERT DATA</button>
<script>
function loadDoc() {
  var xhttp = new XMLHttpRequest();

  xhttp.onreadystatechange = function() 
  {
    if (xhttp.readyState == 4 && xhttp.status == 200) 
    {    
           eval(xhttp.responseText);   
        }
  };
 xhttp.open("GET", "sample1.js", true)
 xhttp.send();
}
</script>
</body>
</html>

使用AJAX调用我可以调用javascript alert func

function callMe(){
 alert("DATA IS 5");
}
document.write(callMe());

当我在firefox上运行这个简单的HTML文件时,它在浏览器上给出了“undefined”。我真的不明白为什么。我从函数callMe()返回“”,以便删除浏览器上的“未定义”但页面似乎继续加载。 有什么我做错了吗?

2 个答案:

答案 0 :(得分:2)

你的方法callMe()计算为undefined(因为它不会返回任何内容并且警告(...) - 最后一个命令 - 将评估为undefined)。

因此,您将在文档中写入“未定义”。

答案 1 :(得分:1)

感谢您的支持。

我按如下方式编写了js代码

function callMe(){
 alert("DATA IS 5");
return " ";
}
document.write(callMe());