2017-06-07 25 views
0

我在獲取計數器以在達到特定數字時重置時遇到問題。我知道如何用while循環來做到這一點,但我似乎無法正確地重置計數器,並且在一定數量的AJAX請求之後讓「循環」自行重置。在Wordpress中的AJAX響應後計數器達到特定#時重置增量

我的目標的全部範圍是通過AJAX在wordpress中查詢帖子的類別。每次計數器都會遞增,然後用作WP_Query(array())中'offset'的值。這部分我工作得很好。我遇到的麻煩是將偏移量重置爲1並重新開始...以創建帖子的循環。我不會發布在functions.php中的部分,因爲我不相信我在那裏有任何問題,但如果您認爲它會有所幫助,只需詢問,我會很樂意添加它。見下面的代碼。

jQuery('#more_posts').click(nextTestimonial); 
var page = 1; // What page we are on. 
var ppp = 1; // Post per page 
function nextTestimonial(){ 

    jQuery("#more_posts").attr("disabled",true); // Disable the 

    jQuery.post(
     'http://localhost/kw/wp-admin/admin-ajax.php', 
     { 
     'action': 'next_testimonial', 
     'page': page, 
     'ppp': ppp 
     }, 
     function(response){ 
      //page++; This works to increment fine if enabled 
      if (page==3){ page = 1; } else {page++;} // <-- Trouble Here 
      jQuery("#testimonial_box").html(response); 
      jQuery("#more_posts").attr("disabled",false); 
      jQuery('#more_posts').click(nextTestimonial); 

     } 
     ); 
} 
+0

爲什麼你在click函數中有'page'變量?然後,您每次點擊它時都會再次從第1頁開始。這是期望的行爲嗎? – Anokrize

+0

它不在點擊功能內,它們在點擊功能之上。看起來它們在裏面,但功能就在它們的下面。該函數通過上面的jQuery語句調用。 – Fushniki

回答

0
var page = 1; // What page we are on. 
var ppp = 1; // Post per page 

計數器變量必須是你點擊功能之外,否則將無法更新。或者你必須在函數內部進行某種循環。

+0

因爲我在上面對Anokrize做出了迴應,所以計數器變量在外面。另外,我將它們移到了jQuery語句之上,它沒有任何區別。如果我使用簡單的頁面++,我可以讓計數器遞增,但我無法重置它。 – Fushniki

相關問題