簡體   English   中英

jquery頁面javascript未在ajax div上加載

[英]jquery page javascript not loading on ajax div

[修訂]

你好,感謝反饋的家伙。 順便說一句,我通過問題進行了修改。 為了讓事情更清楚,這是我的 html 頁面(僅示例)

<html>
<head>
<body>
     <form>
     <div class="loadAjax"></div>
     <div class="toggle">[form inputs here]</toggle>
     <a href="#" class="btn">Submit</a>
     </form>
     <script>[several js scripts here]</script>
</body>
</html>

這是我的主要 js 文件:

$(function() {
     [some lines here]
     $('.toggle').toggle();
     $('.btn').on('click', function(e) {
          e.preventDefault();
          $.ajax({
               url: 'http://example.com/ajaxpage',
               type: 'POST',
               data: $('form').serialize(),
               beforeSend: function() {
                     ...
               },
               success: function(data) {
                     $.getScript('js/main.js');
                     $('.content').html(data);
               }
          });
     });
});

將在 div.loadAjax 中加載的頁面。

<div class="toggle">ajax page load</div>

以此為例,主頁上的切換似乎有效。 但是div.toggle上的div.loadAjax沒有。 我需要設置$.getScipt()以便再次重新加載 main.js 文件。 div.loadAjax不應該繼承 main.js,因為它首先已經加載了嗎? 為什么我仍然需要使用$.getScript()重新加載它?

注意:我正在使用 ajax 在 PHP 頁面上發布表單。

再次感謝!

切換代碼已在您的第一個頁面加載時執行。 這不會在沒有頁面重新加載的情況下自動再次執行,否則您必須再次觸發它或者應該像現在一樣再次加載您的腳本。

嘗試將其附加到 click 事件並使用.trigger動態觸發它

$(function() {
     [some lines here]

     $(".toggle").on("click", function(){
                           $('.toggle').toggle();
                             });

    $('.toggle').trigger("click");

     $('.btn').on('click', function(e) {
          e.preventDefault();
          $.ajax({
               url: 'http://example.com/ajaxpage',
               type: 'POST',
               data: $('form').serialize(),
               beforeSend: function() {
                     ...
               },
               success: function(data) {

                     $('.content').html(data);
                     $('.toggle').trigger("click");
               }
          });
     });
});

為什么不使用$.load()方法: http : //api.jquery.com/load/

這將允許您執行 Ajax 調用,將結果注入回頁面的 DOM 中,並且還支持執行通過請求加載的腳本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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