[英]jQuery - document.ready not firing when content loaded with AJAX
[英]Jquery Document.ready when loaded through AJAX links
我是新來的,所以請原諒任何錯誤。
我正在學習jQuery(v1.9.1)以及使用jQuery Mobile(v1.3.1)。 使用AJAX鏈接和javascript時遇到兩個問題:
1)當我通過jqm提供的默認AJAX鏈接方法鏈接頁面時,我失去了在后續頁面上運行任何新加載的javascript的功能。 即當我從page1.php轉到page2.php時,是否可以執行如下所示的javascript(此代碼在page2.php中):
<script>
$(document).ready(function(){
$('#form_field_email').focus();
});
</script>
在瀏覽完一堆問題之后,我相信這是因為初始頁面加載后沒有評估新腳本。 因此,我試圖將我的所有代碼都移到加載在page1.php上的.js文件中。 但是有時我想觸發頁面加載操作(如上所述)。
沒有使用eval函數有什么方法可以做到這一點?
2)類似地,如果page1.php上的DIV的ID是'messageBox',但是如果我對page2.php上的另一個DIV使用相同的ID,則會失去控制page2上新繪制的DIV的功能javascript仍指向不再可見的舊DIV。
$('#messageBox').show();
有沒有一種方法可以使用相同的名稱,但是仍然可以指向當前頁面上的元素。
謝謝您的幫助。
您應該做的是將ajax加載后需要運行的代碼放入ajax調用的成功回調中。
$.ajax({
url: 'http://example.com',
success: function() {
//do something when call completes successfully
}
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.