我正在尝试实现Jquery.ajax方法,以简化我的网站中的ajax。
这是我正在使用的功能:
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
});
}
你可能会犯错误。