JQuery导致.NET中的回发

时间:2011-03-06 16:21:22

标签: c# jquery asp.net

我第一次在jquery中创建了一个adrotator,当我在一个使用pagemethods的页面上使用它来对服务器进行ajax调用并显示一个模态时。该页面回发了。当我删除旋转器时,页面正常工作。在旋转器中,我在文档就绪函数中有以下代码。

    $(".animation_control a.play").live('click', function () {        
        $(this).removeClass('play');
        $(this).addClass('pause');
        Play();
    });

    $(".animation_control a.pause").live('click', function () {
        $(this).removeClass('pause');
        $(this).addClass('play');
        clearInterval(timer);
    });

    $(".animation_control a.pause").click(function () {

    });

    //Toggle Teaser
    $("a.collapse").click(function () {
        $(".main_image .block").slideToggle();
        $("a.collapse").toggleClass("show");
    });

如果我注释掉这段代码,页面会停止整个页面刷新,并像往常一样回复异步。有关为什么会导致页面执行完整回发而不是部分回发的任何想法?

3 个答案:

答案 0 :(得分:3)

作为猜测,由于代码不完整,您应该向事件处理程序添加return false以防止链接实际触发。

答案 1 :(得分:2)

.live('click', function (e) {       
e.preventDefault();

//your code

答案 2 :(得分:0)

锚点用于导航到同一页面中的页面/区域,根据此部分,单击锚点必须将我们移动到锚点指向的HREF。

为了破坏这种默认行为,我们需要执行return false或使用jQuery来阻止默认操作。

这是an example of what i mean.