2011-08-03 74 views
1

我想知道什麼JavaScript或jQuery的功能,我需要得到一個Ajax加載微調與jqtouch一起工作。與jqtouch實現ajax加載微調器

我在頁面上有一個搜索按鈕,當點擊提交到一個php文件處理搜索結果和回聲一行一行的結果在 div hthml jqtouch自動放入一個新的div(這是我的第一個jqtouch應用程序,但這看起來很標準,新的'網頁'只是html中的新divs)。

我必須有一個onclick的搜索按鈕才能觸發javascript,因爲'live'和類似的jquery函數不會在我測試的iphone上使用。 Onclick II知道調用一個函數來'顯示'頁面上的加載div並隱藏它,當我得到一個desponse但後來我迷路瞭如何檢測php文件已完成處理頁面結果,因爲我不知道jqtouch如何說明這一點。

編輯

function popup(){ 
    $('#popup').ajaxStart(function(){ 
     $(this).show(); 
     }); 

    $('#popup').ajaxComplete(function(){ 
     $(this).hide(); 
     });  

    } 

這工作的計算機上,但有一個錯誤在我的反應下面bohzo解釋,我怎麼得到它的工作在iPhone上? 這是一個函數,因爲在我的jqtouch實現中,onclick動作是必不可少的。

+0

這不是所謂的 '微調'。一個微調器是一個號碼選擇器機智+/- – Bozho

+0

一個小小的眼睛糖果http://www.ajaxload.info/ – max4ever

+1

不,在這種情況下的微調是一個小的動畫旋轉gif,它表明請求正在處理。 –

回答

0

您可以使用我.ajaxStart(..).ajaxComplete(..)

+0

這似乎在我的電腦上工作,謝謝。我會在接受答案之前在我的iPhone上測試它,因爲我知道jqtouch是什麼樣的。 – David

+0

那麼,它在電腦上效果很好,但在iPhone上它不能按預期工作。我第一次點擊搜索加載GIF沒有出現。如果我點擊並再次點擊搜索,則會在第二次出現時再次點擊搜索。我的代碼被編輯成我的問題,如果你想照顧你的意見。 – David

1

這是工作在我的應用程序。

function SubmitSearch() 
    { 
     $("#loading_gif").show(); 
     $.post('url to the php file', {var1: searchkey}, function(data) { 
     $("#loading_gif").hide(); 

     //do something with returned data 
     alert(data); 
     }); 
    } 

您可以在您的php文件中捕獲搜索關鍵字,如$ key = $ _POST [var1]; 希望這有助於。

0

這適用於使用Zepto的jQTouch(尚未使用jQuery進行測試)。

CSS:

div#jqt #loading { 
    background: rgba(0,0,0,0.5) url('../images/scanner/loading.gif') 50% 50% no-repeat; 
    z-index: 999; 
    position: fixed; 
} 

JS:

$(document).on('ajaxStart', function(){ 
    $('#loading').addClass('current'); 
}); 

$(document).on('ajaxStop', function(){ 
    $('#loading').removeClass('current'); 
});