搜尋
首頁web前端Bootstrap教程Bootstrap模態視窗中如何從遠端載入內容? remote方法介紹

本篇文章跟大家介紹一下Bootstrap Modal 使用remote從遠端載入內容。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

Bootstrap模態視窗中如何從遠端載入內容? remote方法介紹

    Bootstrap的Modal這個模態視窗元件還是很好用的,但在開發的過程中模態視窗中的內容大部分都是從後端載入的。要實現模態窗的內容是從後端載入話,常用的實作方式有2種。它們是:

    (1)Modal裡面套一個Iframe,透過Iframe的src去載入遠端的內容。這種方式的缺點是這個模態框的寬度和高度不好調,而且把寬度和高度設定成固定值,就破壞了bootstrap的響應式佈局了。

    (2)使用Modal的remote參數去載入遠端的內容。這種方式有些小bug(後面會介紹解決方案),不過這種方式沒有上一種方式需要手動設定的寬度和高度的麻煩。

    個人比較喜歡第2種方式,這樣就介紹下使用remote的方式。 【相關推薦:《bootstrap教學》】

本次使用的bootsrap的版本是3.3.7

一、頁面的準備

#(1)主頁

        主頁這裡,先放置一個模態框,不過模態框裡面的內容物是空白的。後續遠端載入後的資料就會自動填入class="modal-content"這個p裡面。準備好如下html程式碼:

<!-- 弹出模态窗口--> 
<div class="modal fade" style="top:13%;"  tabindex="-1" role="dialog" id="showModal">
  <div class="modal-dialog" role="document">
      <div class="modal-content">
<!-- 内容会加载到这里 -->
      </div>
    </div><!-- /.modal-content -->
  </div><!-- /.modal-dialog -->
</div><!-- /.modal -->

 放置好模態視窗後,我們可以在主頁面上放一個按鈕來觸發這個模態視窗的顯示,這個按鈕的html程式碼如下:

<button>新增用户</button>

按鈕和模態視窗好後,我們需要給這個按鈕綁定點擊事件,點擊後顯示模態視窗並從遠端載入資料。 js程式碼如下:

    $("#addBtn").click(function(){
        // 打开模态框
        $("#showModal").modal({
            backdrop: &#39;static&#39;,     // 点击空白不关闭
            keyboard: false,        // 按键盘esc也不会关闭
            remote: &#39;/sys/toAddUser&#39;    // 从远程加载内容的地址
        });
    });

主頁的內容就是這些,注意:開始的那些引入bootstrap相關的程式碼我沒貼,使用時需要自己引入好。

(2)待載入到模態框裡面的頁面準備

        首先,我先說下,這個頁裡面不需要引入和任何的js和css。因為這個頁面載入到模態框裡面後,就等於主頁上的一部分了。有點像主頁把它給動態導入的感覺,它可以訪問主頁的任何內容。這個頁面可以看成是class="modal-content" 這個p內容,載入後就把這些html程式碼嵌入裡面去了。因此寫這個頁面時,我們可以去bootstrap官網copy一個模態框的程​​式碼,把裡面的內容那塊抽取出來做我們這個遠端頁面是最適合的了。我準備的程式碼如下:

<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 id="添加用户">添加用户</h4>
</div>
<div class="modal-body">
<form id="addForm">
<div class="form-group">
<label for="account">账号</label>
<input type="text" class="form-control" id="account" name="account" placeholder="账号(用于登录)">
</div>
<div class="form-group">
<label for="username">用户名</label>
<input type="text" class="form-control" id="username" name="username" placeholder="用户名">
</div>
<div class="form-group">
<label for="password">密码</label>
<input type="password" class="form-control" id="password" name="password" placeholder="Password">
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" id="resetBtn" class="btn btn-default" >重置</button>
<button type="button" id="saveBtn" class="btn btn-primary">提交</button>

</div>

二、後台的介紹

 其實後台程式碼沒什麼介紹的,當點擊主頁的按鈕後,後台接收到這個請求,把準備好的頁面返回過去就ok。用SpringMvc一下就實現。故不介紹。

三、最終效果

透過點擊主頁面的新增按鈕,彈出了模態框,並把遠端的頁面載入到了遠端模態框裡面。

 Bootstrap模態視窗中如何從遠端載入內容? remote方法介紹

四、解決下小bug

        (1)經過測試,發現這個模態視窗的內容重後台載入一次後,再關閉這個模態視窗再開啟時不會再從後台載入。

        (2)這個模態方塊裡面的內容在載入後就留在了主頁上,主頁面可以直接存取。這樣容易出現問題,如:主頁中有個dom元素的id和模態框裡面的dom元素的id相同,這就容易出bug,我們希望模態窗關閉後直接把模態窗裡面的內容都清除掉。

        解決上面2個bug的方案請參考下面這段js程式碼,其實是監聽了模態視窗的關閉

        // 每次隐藏时,清除数据,确保不会和主页dom元素冲突。确保点击时,重新加载。
        $("#showModal").on("hidden.bs.modal", function() {
            // 这个#showModal是模态框的id
            $(this).removeData("bs.modal");
            $(this).find(".modal-content").children().remove(); 
        });


############################################################################################################################。 #######        要注意的是遠端載入的這個頁面其實是一小段html程式碼,它不需要單獨的引入js和css(如bootstrap的js和css)。這和使用Iframe方式是完全不同的,Iframe裡面的內容可以看成是個單獨的頁面,所以使用Iframe時需要自己引入js和css。 #########更多程式相關知識,請造訪:###程式設計教學###! ! ###

以上是Bootstrap模態視窗中如何從遠端載入內容? remote方法介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:博客园。如有侵權,請聯絡admin@php.cn刪除
在React中集成引導樣式:方法和技術在React中集成引導樣式:方法和技術Apr 17, 2025 am 12:04 AM

在React項目中整合Bootstrap可以通過兩種方法:1)使用CDN引入,適合小型項目或快速原型設計;2)使用npm包管理器安裝,適用於需要深度定制的場景。通過這些方法,你可以在React中快速構建美觀且響應式的用戶界面。

React的引導:優勢和最佳實踐React的引導:優勢和最佳實踐Apr 16, 2025 am 12:17 AM

將Bootstrap集成到React項目中的優勢包括:1)快速開發,2)一致性和可維護性,3)響應式設計。通過直接引入CSS文件或使用React-Bootstrap庫,可以在React項目中高效使用Bootstrap的組件和样式。

Bootstrap:網絡框架的快速指南Bootstrap:網絡框架的快速指南Apr 15, 2025 am 12:10 AM

Bootstrap是由Twitter開發的框架,幫助快速搭建響應式、移動優先的網站和應用。 1.易用性和豐富組件庫使開發更快。 2.龐大社區提供支持和解決方案。 3.通過CDN引入並使用類名控製樣式,如創建響應式網格。 4.可自定義樣式和擴展組件。 5.優點包括快速開發和響應式設計,缺點是樣式一致性和學習曲線。

打破bootstrap:是什麼以及為什麼重要打破bootstrap:是什麼以及為什麼重要Apr 14, 2025 am 12:05 AM

Bootstrapisafree,開放式frameworkthatsimplifiesRessiveandMobile-firstwebsitedEvelvelopment.itofferspre-styledComponentsAndAgridSystem,流化inthiningthecreationofaesthethetshethetshetshetshetshetshetshetshetshetshethetshethet interpleaseansing和Runctinctionalwebdesigns。

Bootstrap:使網頁設計更容易Bootstrap:使網頁設計更容易Apr 13, 2025 am 12:10 AM

Bootstrap讓網頁設計更容易的原因是其預設組件、響應式設計和豐富的社區支持。 1)預設組件庫和样式讓開發者無需編寫複雜的CSS代碼;2)內置網格系統簡化了響應式佈局的創建;3)社區支持提供了豐富的資源和解決方案。

Bootstrap的影響:加速網絡開發Bootstrap的影響:加速網絡開發Apr 12, 2025 am 12:05 AM

Bootstrap加速了Web開發,通過提供預定義的樣式和組件,開發者可以快速搭建響應式網站。 1)它縮短了開發時間,例如在項目中幾天內完成基本佈局。 2)通過Sass變量和mixins,Bootstrap允許定製樣式以滿足特定需求。 3)使用CDN版本可以優化性能,提高加載速度。

理解引導:核心概念和功能理解引導:核心概念和功能Apr 11, 2025 am 12:01 AM

Bootstrap是一個開源的前端框架,主要作用是幫助開發者快速構建響應式網站。 1)它提供了預定義的CSS類和JavaScript插件,方便實現複雜的UI效果。 2)Bootstrap的工作原理依賴於其CSS和JavaScript組件,通過媒體查詢實現響應式設計。 3)使用示例包括基本用法,如創建按鈕,以及高級用法,如自定義樣式。 4)常見錯誤包括類名拼寫錯誤和未正確引入文件,建議使用瀏覽器開發者工具調試。 5)性能優化可通過自定義構建工具實現,最佳實踐包括使用語義化HTML和Bootstrap的預定義

Bootstrap Deep Dive:響應式設計和高級佈局技術Bootstrap Deep Dive:響應式設計和高級佈局技術Apr 10, 2025 am 09:35 AM

Bootstrap通過網格系統和媒體查詢實現響應式設計,使網站適應不同設備。 1.使用預定義類(如col-sm-6)定義列寬。 2.網格系統基於12列,需注意總和不超12。3.使用斷點(如sm、md、lg)定義不同屏幕尺寸下的佈局。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器