簡體   English   中英

腳本僅執行一次,並帶有異步引導程序模式

[英]Scripts executed only once, with async bootstrap modal

我有一個模態,如下面的模態,它使用jQuery jQuery.ajax()方法異步加載其內容。

<script>alert('test!')</script>
    <div class="modal" tabindex="-1" role="dialog">
    <div class="modal-dialog" role="document">
      <div class="modal-content">
        <div class="modal-header">
          <h5 class="modal-title">Modal title</h5>
          <button type="button" class="close" data-dismiss="modal" aria-label="Close">
            <span aria-hidden="true">&times;</span>
          </button>
        </div>
        <div class="modal-body">
          <p>Modal body text goes here.</p>
        </div>
        <div class="modal-footer">
          <button type="button" class="btn btn-primary">Save changes</button>
          <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
        </div>
      </div>
    </div>
  </div>

為什么當我第一次觸發模態並且只有第一次觸發警報對話框時,為什么? 如果我再試一次而不重新加載頁面,則不會再收到警告對話框…

HTML代碼

步驟嘗試

我試圖在異步模態中添加一些基本步驟 ,但是它僅在第一次運行時有效(就像其他任何js代碼一樣……)

javascript代碼

這里是觸發模式調用的按鈕:

<button class="btn btn-primary btn-xs" onclick="modalCall('Details')">Details</button>

和異步調用:

在閱讀文檔之前的首次嘗試:

function modalCall(url)
{
   $('.modal-content').load(url);
}

第二個用$ .get…沒有成功

$.get( url, function( data ) {
    $('.modal-content').html( data );
    alert( "Load was performed." );
  });

在這里, 警報(“已執行加載。”); 每次按下按鈕時都會執行,但模式中的代碼不會執行...

而且我在控制台中什么也沒得到…

經過數小時的調試,我終於找到了原因……

  1. 我使用了模板,然后復制了modal-content類……(一次在異步模式中,一次在登錄頁面上),導致嵌套了modal-content
  2. 我使用了多個div(每個div都唯一標識自己的id)作為模式容器(如我在一些示例中所看到的那樣,是一個異步模式),奇怪的是,這導致在每個容器中加載一個模式…盡管每對data-target / #id是正確的…

清潔所有這些東西解決了我的問題……

暫無
暫無

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

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