【发布时间】:2013-12-05 06:18:32
【问题描述】:
在加载主 HTML 后,我有一个要加载的外部 HTML。
<!--external.html-->
<form id="externalForm">
<div id="button">Button</div>
</form>
如何为“按钮”添加事件处理程序?
在主 HTML 中尝试了以下代码,
<!--main.html-->
<body>
<div id="extForm"></div><!--to be loaded when document.ready-->
<script>
$(document).ready(function() {
// Fill extForm with div's declared in external.html
$("#extForm").load("external.html");
}
// button.ready will be triggered after loading external.html
$("#button").ready(handlerCreator());
var handlerCreator = function () {
return function() {
alert("Working"); // since button is ready
$("#button").on("click", function() {
alert("Not working"); // why?
});
};
}
</script>
【问题讨论】:
-
这里的括号要去掉:
$("#button").ready(handlerCreator); -
@Igle 括号 != 括号
标签: jquery events event-handling