我試過在互聯網上搜索,發現沒有簡單的答案,我相信存在兩個我遇到的問題。我的jquery UI自動完成功能如下:當輸入空格時取消自動填充請求,並且僅在用戶停止輸入時才觸發。
$('#moviename').autocomplete({
// URL is parsed by my framework
source:"<?=URL::route('MovieAutocomplete')?>",
minLength:2,
dataType:"json",
select:function(event,ui){
// set artist id
$('#movieid').val(ui.item.id);
$('#moviename').prop('disabled',true);
$('#moviedetails').prop('disabled',false);
$('#movieclear').html('Clear');
$('#moviehint').toggle();
}
});
此代碼有效。不過,我正在看錶現。我有兩個問題:
我的控制器在看到空白項時取消請求。但是,我希望在請求發送之前檢查這個條件。我已經和beforeSend一起玩過了,但是它不起作用。有人能幫我完成這個嗎?
我還想僅在用戶停止輸入時觸發AJAX請求,比如說給它一個500ms的時間來等待它發送請求到服務器。有沒有簡單的方法來做到這一點?我猜「
call autocomplete inside a keyup event which will be bound to the field I want
」。請幫幫我。
如果有人能爲我看這個,那將會很棒。
您的beforesend代碼是什麼樣的? – canoe
謝謝,它的功能(){var 0 = $ .trim() if(a.length <1)return false; 返回true; }' –