Javascript JQuery preventDefault不处理委派事件

Javascript JQuery preventDefault不处理委派事件,javascript,jquery,preventdefault,Javascript,Jquery,Preventdefault,我有一个feed,它使用AJAX在文档准备好后加载帖子。因为元素在代码执行时还没有准备好,所以我必须使用委托来绑定很多函数 $(posts).delegate('.edit_comment_text','keyup',function(e){ return false; if (e.keyCode == 13 && e.shiftKey == false) { //Post the new comment and replace the text

我有一个feed,它使用AJAX在文档准备好后加载帖子。因为元素在代码执行时还没有准备好,所以我必须使用委托来绑定很多函数

$(posts).delegate('.edit_comment_text','keyup',function(e){
    return false;
    if (e.keyCode == 13 && e.shiftKey == false) {

        //Post the new comment and replace the textbox with a paragraph.
        var message_area = $(this).parent('.comment_message');
        var new_message = $(this).val();
        var comment_id = $(this).closest('.group_comment').attr('data-comment');
        var url = 'functions/edit_comment.php';
        var array = {
            'comment':comment_id,
            'message':new_message
        }
        $.post(url, array, function(data){
            console.log(data);
            $(message_area).html("");
            $(message_area).text(new_message);
        });

    }



})
这是我在事件上执行的代码。我一直试图让浏览器在用户点击enter键时停止掉行,但这个动作甚至在我的代码被触发之前就已经执行了。为了证明这一点,我将“return false”放在块的最顶端。在这个例子中,当用户点击enter键时,我的所有代码都不会运行,但textarea仍然会删除一行

是因为JQuery的委托导致在默认事件后调用我的函数吗?他们在文档中给出了防止默认事件的示例,所以可能是版本错误还是什么

有人有什么想法吗


谢谢

.delegate
已被委派事件替换,并在委派级别激发。你需要使用event.target对其进行过滤。如果你在
keydown
而不是
keydup
上启动事件处理程序,该怎么办?@Blazemonger天哪,我真不敢相信我没有想到,谢谢!另外,我不知道它被替换了,我会改为看“on”,谢谢,但这似乎也不起作用。