.click()不会';我再也不工作了


.click() doesn't work a second time

作为jQuery的初学者,我正在努力了解如何处理.click().

我的事件点击功能:

<script language="javascript" type="text/javascript">
    $(document).ready(function() {
$('.del').click(function() {
        var lien = $(this).attr("title");
        $.post(lien, function(data) {
        $('#result').empty();
        $('#result').append(data);
        })
        });
</script>

跨度:

<span title="<?php echo base_url().'del/cat/'.$cat->idcategories ?>"class="del alignright">supprimer</span>

这是第一次,但之后就不行了。发生这种情况是因为我正在使用attr()吗?

对预期行为的任何解释都将不胜感激。

首先,关闭document.ready时,似乎缺少最后一个括号parens。这可能(应该)会导致错误。你的代码应该是这样的:

$(document).ready(function() {    
  $('.del').click(function() {
    var lien = $(this).attr("title");
    $.post(lien, function(data) {
        $('#result').empty();
        $('#result').append(data);
    });
  });
});

为了更好地衡量,也可以在你的跨度中的类前添加一个空格:

<span title="<?php echo base_url().'del/cat/'.$cat->idcategories ?>" class="del alignright">supprimer</span>

然后考虑在其他地方以某种方式替换或解除绑定.del的情况下,将click更改为live的其他答案。

从外观上看,您发送了一个删除内容的请求。。。如果你发送两次请求,它只会删除一次。。

但是尝试

$('.del').live('click',function(){
    var lien = $(this).attr("title");
    $.post(lien, function(data) {
        $('#result').empty();
        $('#result').append(data);
    }
});