引入 common.js 後 Bootstrap 二級選單無法展開;移除該檔案則恢復正常。
$(function () {
$(".m-header").load("/headPage.htm");
$(".m-footer").load("/footPage.htm");
});
.m-header 容器原本包含導航選單結構。.load() 以 AJAX 載入 headPage.htm 並替換容器內全部 HTML,導致原始選單 DOM 被移除,事件綁定失效。
.m-header,或在 headPage.htm 中保留完整選單結構並重新初始化 Bootstrap 元件。$(".m-header").load("/headPage.htm", function() {
// 重新啟用下拉選單
$('[data-bs-toggle="dropdown"]').dropdown();
// 或 Bootstrap 4/5
var dropdowns = document.querySelectorAll('.dropdown-toggle');
dropdowns.forEach(el => new bootstrap.Dropdown(el));
});
<iframe> 隔離,或以 API 取得資料後客戶端渲染。.load() 整體替換含有互動元件的區域。