在ajax响应之前提交事件发生

时间:2012-02-13 05:21:36

标签: ajax

在我的网站中,我使用了以下代码。但是只有ajax工作如果我们添加警报。

$(document).submit(
        function(){

            if(document.getElementById('time_i').innerHTML != '')
            {
                var flag = false;
                var str = document.getElementById("time_i").innerHTML;
                if (window.XMLHttpRequest)
                  {  xmlhttp=new XMLHttpRequest();
                  }
                else
                  {
                  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                  }
                xmlhttp.onreadystatechange=function()
                  {
                if (xmlhttp.readyState==4 && xmlhttp.status==200)
                    {

                    }
                  }
                xmlhttp.open("GET","URL"+str,true);
                xmlhttp.send();

                }
        });

请给我解决方案。

1 个答案:

答案 0 :(得分:1)

您应该将event添加到顶部函数声明的参数列表中,然后在if语句中写入event.preventDefault();。这样可以防止表单更改您的页面。

如果你想要改变页面,那么你可能不应该首先使用Ajax,而是提交常规的旧表单。

'AJAX'的'异步'方面是调用不会阻塞。它将立即返回,然后在完成后,如果您给它一个函数,它将对函数执行回调。