我的代码看起来像这样:
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript">
function myButton_click(){
alert('got here');
$.get("myPage.cfm", function(data){alert('load was performed')});
}
</script>
</head>
<body>
<input type="button" id="myButton" value="My Button" onClick="myButton_click()" />
</body>
</head>
第一个警报(“到达此处”)显示,但“已执行加载”没有。是否正在执行?我做错了什么?
修改:
我已经尝试使用“http://www.google.com”而不是“myPage.cfm”来确保它对我的网页没有问题而且仍然没有提醒......
答案 0 :(得分:1)
根据the docs,您作为$.get
来电的第二个参数传递的功能仅在成功时称为 。因此,如果您的服务器返回任何类型的错误(400,403,404,500等),则不会调用该函数。如果您想要无论如何调用函数,请使用complete
:
$.get("myPage.cfm").complete(function(jqXHR, textStatus) {
alert("Load was performed");
});
答案 1 :(得分:0)
回调仅在成功时执行(Http状态代码在200s或304中),尝试使用速记jQuery.ajax方法并遵循this中的建议SO问题如何处理此响应合理的方式。