jQuery:用于ajax函数的toggleClass事件处理函数

时间:2013-01-27 18:16:23

标签: ajax jquery event-handling

我想知道当我在jQuery中使用toggleClass时,是否有人可以帮助指导我如何编写事件?

我有一个项目列表,当我点击一个项目时,它突出显示它,当有人点击列表中的另一个项目时,上一个突出显示的项目消失并突出显示当前点击。此外,如果我点击已突出显示的相同项目,它就会消失。

现在我正在尝试编写一个函数来调用ajax,只有它被突出显示。因此,当再次按下它时(再次按下高亮显示)时,它不会再次运行ajax函数。

        $(".media").on('click',function(){
            var $this = $(this);

            // highlighting the object
            $this.toggleClass('selectMedia').siblings().removeClass('selectMedia');

            // saving the id

            var selId1 = $this.data('id');
            $.post("ajax/ajax_sessions.php", {"sel_1":selId1}, function(data) {
                alert(data); // alerts 'Updated'
            });
        });

谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

在执行AJAX请求之前,请检查是否存在类:

if ( ! $this.hasClass('selectMedia') ) return;

// Now do your AJAX request...