无法获得click()函数来处理jQuery

时间:2010-02-10 03:02:45

标签: jquery click hide

提前感谢您的帮助:

此功能在从第一次单击功能中删除div时工作正常,但不会以任何身份确认第二次单击功能。

我甚至可以根据需要多次激活第一次点击功能。

我错过了什么?我正在把头发撕掉。

$('span[rel="confirm"]').click( function() {
    $('.confirmbox').remove();

    targetpath = $(this).attr("targetpath");
    dbid = $(this).attr("dbid");

    $(this).after('<div><span class="closeout">X</span> &nbsp Are you sure you want to <a href="index.php?cmd=deletesample&id=' + dbid + '&filetarget=' + targetpath + '">delete?</a></div>');
    $('.confirmbox').show(200);
});

$('.closeout').click( function() {
    $('.confirmbox').css('background-color', 'green');
});

2 个答案:

答案 0 :(得分:7)

您正在动态添加元素,因此您需要使用$ .live()代替:

$('.closeout').live("click", function(){
    $('.confirmbox').css('background-color', 'green');
});

答案 1 :(得分:5)

由于您正在处理动态DOM元素,因此您需要将click()更改为live()事件而不是......

$('.closeout').live('click', function() {
    $('.confirmbox').css('background-color', 'green');
});

以下是基于您的代码link text

的快速演示

有关live()的更多信息,请查看http://api.jquery.com/live/