簡體   English   中英

通過AJAX鏈接加載時的Jquery Document.ready

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM