javascript-jQuery ajax调用在每个请求上增加指数

我使用Jquery-ajax调用将信息发布到页面并显示返回的信息.我遇到的问题如下:

当用户进行第一个ajax调用时,一切似乎都很正常.当用户不重新加载页面并再次发出相同的请求时,将进行两次后调用,并且进行两次get调用.第三次是4post 4get请求.第4次8Post / 8Gets.依此类推,直到浏览器(firefox Latest v.)冻结了一段时间.

我是一个新手程序员,不知道可能是什么原因.我不知道在代码内部看什么.也许你们可以给我一个提示.我其他的ajax请求都很好,并且仅发布一次.

Firebug日志:

这是我的一部分代码:

$(document).ready(function() {
    $('#datepicker').change(function()
    {
        sendDate($('#datepicker').val());               
    });
});

    function sendDate(str)
    {
        $.ajax(
        {
            type: "POST",
            url: "manage_processor.php",
            data: { chosendate: str },
            success: function(data)
            {
                $('#printdiv').html(data);              
            }
        });     
    }

希望任何人都能对此情况有所了解.

解决方法:

如果我敢猜测,我怀疑返回的数据包含引用您的javascript文件的脚本标签.这将解释您看到的GET请求.每次将请求数据放入#printdiv中时,都会再次加载脚本,并且相同的javascript处理程序将绑定到同一事件.这将解释每个请求后处理程序数量加倍的情况.

快速测试:将console.log(‘script loading’);在manage_functions.js的顶部.如果我是对的,它将在每次请求后记录.

相关文章

1.第一步 设置响应头 header('Access-Control-Allow...
$.inArray()方法介绍 $.inArray()函数用于在数组中搜索指定的...
jquery.serializejson.min.js的妙用 关于这个jquery.seriali...
JS 将form表单数据快速转化为object对象(json对象) jaymou...
jQuery插件之jquery.spinner数字智能增减插件 参考地址:http...