注册('点击')洞察另一个('点击')

时间:2015-05-07 13:16:47

标签: javascript jquery optimization

我有以下JavaScript代码:

 ... .on('click', '.edit', function(e) {
                e.preventDefault();
                var $el = $(this);
                var edit_url = $el.attr('href');
                var $comment_holder = $($el.closest('li'));
                var $comment_item = $comment_holder.children('.comments__item');
                var comment_text = $comment_item.find('.comments__text p').html();

                var $edit_form = $('.comments form').clone();
                $edit_form.attr('action', '#');
                $edit_form.find('.btn').removeClass('add-comment').addClass('edit-comment');
                $edit_form.find('textarea').val(comment_text);


                $comment_item.hide();
                $comment_holder.append($edit_form);

                $('.edit-comment').on('click', function (e) {
                    e.preventDefault();
                    var formProps = $(this).closest('form').serialize();
                   $.post(edit_url, formProps)
                    .success(function() {
                        var new_comment_val =$edit_form.find('textarea').val();
                        $comment_item.find('.comments__text p').html(new_comment_val);
                       $comment_holder.html($comment_item);
                    });
                });
      });

所以我的问题是:我在另一个人中注册on('click')是否正常?每次点击on('click')元素时,嵌入的'.edit'都会重新注册。这对我来说有点不合时宜。

0 个答案:

没有答案