Ajax永远不会返回值。我已经尝试设置async:false选项,并尝试设置回调函数,它仍然永远不会返回值。当我使用firefox浏览到url时,我看到了预期的响应,但是当我通过ajax发出请求时,没有响应。 Firebug也证实了这一点。
我已经尝试了很多我找到的代码示例,但它们永远不会返回值。我也尝试过使用不同版本的jquery和其他浏览器。
有谁知道什么可能是错的? 谢谢 下面是用户单击表单上的按钮时调用的代码。
function login() {
var username = $("#uname").val();
var password = $("#password").val();
$.ajax({
type: 'POST',
url: 'http://localhost/mConnect/login.php',
data: { username: username, password: password },
async: false,
success: function(html) {
slim(html);
}
});
}
function slim(html) {
// var data = $(xml).find("Status").text();
alert(html.responseText);
}
下面是login.php,它只是打印静态xml
<?php
$array = array('stat' => '1.0',
'mode' => 'whatever',
'content' => 'All');
$new ='<?xml version="1.0" encoding="iso-8859-1"?><response>';
foreach($array as $key => $values) {
$new .= "<$key>$values</$key>";
}
echo $new.'</response>';
?>
答案 0 :(得分:0)
如果您发送了AJAX请求,则会收到回复。即使它是超时。因此,如果您根本没有回复,那么您很可能从未发送过请求。
答案 1 :(得分:0)
你有一个成功的回调,但没有失败的回调。沿途可能会发生一些失败,大约有100种可能性。在Firebug(或等效的)中运行它,看看请求会发生什么。 (我的钱:你当地的网络服务器根本没有回应。)