我是JS的新手,我目前正在研究XMLHttpRequests和闭包。我的主要目标是(1)将所有xhr代码放在一个.js文件中(2)通过src标签将其拉入我的index.html页面,最后(3)调用index.html页面上的xhr函数
当我尝试编号3时出现问题...我可以调用我的函数来触发其原生.js文件中的xhr,但不能在index.html中触发。
这是我到目前为止所写的内容:
var experiment = function(callback){
return function(destination){
var xhr = new XMLHttpRequest();
xhr.onload = function(){
if(xhr.readyState === 4){
if(xhr.status === 200){
var text = xhr.responseText;
callback(text);
}
else{
console.log(xhr.statusText);
}
}
}
xhr.open("get", destination, true);
xhr.send(null);
}
}
function closure(url){
return experiment(alert)(url);
}
然后,在我的index.html页面中,拉出类似这样的内容:
<script type="text/javascript" src="exp.js">
closure("url.com/json");
</script>
但是XHR永远不会发射。我做错了什么?
答案 0 :(得分:1)
<script type="text/javascript" src="exp.js"/>
<script>
closure("url.com/json");
</script>