如何捕获鼠标点击由jquery创建的按钮?

时间:2013-08-13 09:16:07

标签: jquery button

我有两个div。在div A中有一个按钮,在div B中没有任何内容。当我点击div A中的按钮时,将在div B中创建一个新按钮,即:

1)我点击了div A中的按钮;

2)点击会触发ajax消息(jquery),消息将被发送到后台服务(由django编写);

3)后台服务将返回一个html片段,这是div B中的新按钮;

4)新按钮将显示在div B中:

$("#B").empty();
$("#B").html(response);

响应是html片段(html片段包含id为“bt_2”的新按钮)。

5)我点击div B中的新按钮;

6)我无法使用jquery捕获此点击:

$("#bt_2").click(function(tmp_event) {
    alert("get it!");
});

这些js脚本都在同一个文件中(名称是hp.js),并且在单击div A中的按钮之前已成功加载js文件。

如果我要捕获新按钮的点击,我该怎么办?任何帮助都是适用的!

2 个答案:

答案 0 :(得分:1)

因为在加载DOM时不存在#bt_2元素,所以需要使用委托事件处理程序。试试这个:

$('#B').on('click', '#bt_2', function(tmp_event) {
    alert("get it!");
});

我假设您在示例中给出的ID只是占位符?如果没有,你应该让它们更具描述性。

答案 1 :(得分:0)

您可以像这样使用.on():

$("#B").on('click','#bt_2',function(tmp_event) {
    alert("get it!");
});