我有这个服务器端 SLIM 代码:
require 'Slim/Slim.php';
$app = new Slim();
//$app->config('debug', true);
$app->get('/hello', 'hello');
//$app->post('/addConsultant', 'addConsultant');
$app->run();
function hello() {
echo '{"hello": ' . json_encode("merp") . '}';
}
很裸露的骨头吧?我的意思是它只有一个 GET。
现在,我有这个客户端 Javascript 代码:
var rootURL = "http://somabsolutions.se/dev/index.php/";
$('#btnHello').click(function() {
$.ajax({
type: 'GET',
url: rootURL + '/hello',
dataType: "text json",
success: function(data){
alert("Something " + data);
},
error: ajaxFailed
});
return false;
});
function ajaxFailed(XMLHttpRequest, textStatus, errorThrown) {
alert("XMLHttpRequest=" + XMLHttpRequest.responseText + "\ntextStatus=" + textStatus + "\nerrorThrown=" + errorThrown);
}
也很容易。
我有这个 HTML 东西,它包含由 jQuery 绑定到 AJAX 调用的按钮:
<!DOCTYPE HTML>
<html>
<head>
<title>
Backend test
</title>
</head>
<body>
<form id="testForm">
<button id="btnHello">Hello World</button>
</form>
<script src="javascript/jquery-1.7.2.min.js"></script>
<script src="javascript/main.js"></script>
</body>
</html>
这玩意,曾经可以工作,直到今天,由于某种外星原因停止了工作!
看,它有效,对吧?
但是每次我按下那个 HTML 按钮时,Ajax 都会认为调用失败并将我重定向到错误函数,该函数除了空白错误消息之外没有提供任何东西。
这有什么问题?几天前它工作得很好!