[英]Ajax call after page load
我試圖建立一個搜索頁面,用戶在其中輸入文本到搜索框中,然后根據搜索結果生成頁面。 我遇到時間問題,因為在JS嘗試編輯頁面上的值后,正在加載空白搜索頁面。
$.ajax({
type: 'GET',
url: '/index.php/content/generate_search',
data: {
search: input.val()
},
beforeSend: function() {
window.location.href = '/index.php/content/search';
},
success: function() {
$('.hero h1').text(input.val());
}
});
為了檢查DOM是否已完全加載,必須考慮所有瀏覽器完成許多步驟。 (我無法在jQuery源代碼中找到實現,但是我將返回一個鏈接)。
因為您已經在使用jQuery,所以最簡單,可能也是最好的方法是:
$( function() {
// your code here
} );
這是的簡寫
$( document ).ready( function() {
// your code here
} );
編輯
好的,正如我所答應的,我返回了document.ready
的實現。 您可以在GitHub上找到它。 這是指向文件當前版本的永久鏈接。
嘗試這個:
$(document).ready(function(){
//Your code
});
onload用於在pageload上執行代碼
window.onload = function() {
// your code
};
這段代碼:
beforeSend: function() { window.location.href = "/index.php/content/search"; },
…導致瀏覽器在發送Ajax請求之前離開頁面並加載新頁面 。
因此,Ajax請求被取消。 如果沒有,那么就不會有JavaScript等待接收響應。
如果要訪問/index.php/content/search
然后啟動Ajax請求,則啟動Ajax請求的JavaScript必須在/index.php/content/search
。 您剛離開的頁面無法在下一頁上運行JavaScript。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.