使用jQuery Ajax方法显示来自PHP页面的响应?
问题描述:
我想实现jquery .ajax方法来简化我的网站中的ajax。使用jQuery Ajax方法显示来自PHP页面的响应?
这是我的工作的功能:
function autoComplete(q, succ)
{
$.ajax({type:"GET",
url: "search.php",
data: "q="+q,
success: succ
});
}
$('input#auto_results').live('keyup', function() {
var text = $('input#auto_results').val();
autoComplete(text,
function(data)
{
alert(data);
});
});
PHP页面上的反应很简单:
echo "response";
所以我想,当函数应该提醒响应称为'keyup'。可悲的是,没有发生。我一定在做错事,我只是不确定它是什么。
答
是“keyup”事件发射吗? 做下列事项。
$('input#auto_results').live('keyup', function() {
var text = $('input#auto_results').val();
alert("Keyup event is firing");
autoComplete(text,
function(data)
{
alert(data);
});
});
如果事件正在触发。然后看到你的代码Firebug的控制台选项卡
或把误差函数回调:
function autoComplete(q, succ)
{
$.ajax({type:"GET",
url: "search.php",
data: "q="+q,
error:function(request, textStatus, err){
alert(request.statusText);
},
success: succ
});
}
你可能会得到近错误。
你检查过萤火虫吗?请求是否发送,是否收到数据?有没有错误? PHP页面和包含这个JS的页面在同一个域下? – Niklas 2011-06-16 08:36:13
有没有JS错误?使用萤火虫或铬开发工具,你可以看到ajax请求是否正在启动? – 2011-06-16 08:37:43
尝试做'alert(“Response:'”+ data +“'”)' - 这样您至少会在响应为空时提醒您(否则空的警报根本不会打开) – mkilmanas 2011-06-16 08:40:59