您是否在$(document).ready()
函数或其他东西上使用过 JavaScript 的样式?在这种情况下,您需要在执行$("#DivId").append(html);
.
例子
你有这样的功能:
$(document).ready(function(){
$('a[href="#modal"]').click(function(){
alert("Modal");
});
});
它在页面加载后在运行时执行。您正在动态插入另一个<a>
具有相同内容的标签。例如:
$("#result").html('<a href="#modal">Modal Window</a>');
发生的情况是,这个 HTML 是在处理程序执行后插入的。因此,函数中启动的处理程序$(document).ready()
不适用于此。因此,为了确保即使执行此操作,您也需要以这种方式重新初始化它:
$(document).ready(function(){
loadPage();
});
function loadPage(){
$('a[href="#modal"]').click(function(){
alert("Modal");
});
}
function something(){
$("#result").html('<a href="#modal">Modal Window</a>');
loadPage();
}
希望你明白吗?