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

提交事件发生在ajax响应之前,ajax,Ajax,在我的网站上,我使用了以下代码。但ajax只有在添加警报时才起作用 $(document).submit( function(){ if(document.getElementById('time_i').innerHTML != '') { var flag = false; var str = document.getElementById("time_i").i

在我的网站上,我使用了以下代码。但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();

                }
        });

请为我提供解决方案。

您应该将
事件添加到顶部函数声明的参数列表中,然后写入
事件.preventDefault()。这将阻止表单更改您的页面

如果您希望以任何方式更改页面,那么首先可能不应该使用Ajax,而应该使用常规的旧表单提交


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

您应该将
事件添加到顶部函数声明的参数列表中,然后写入
事件.preventDefault()。这将阻止表单更改您的页面

如果您希望以任何方式更改页面,那么首先可能不应该使用Ajax,而应该使用常规的旧表单提交


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

我不知道您的问题是什么。您显然不理解AJAX的
异步部分。我只想使用AJAX将值存储在数据库中。在提交事件上,但提交事件发生在AJAX调用响应之前。。。但若我在响应时添加警报,那个么它将存储在数据库中,这意味着我们需要添加延迟,所以我们将在数据库中获得价值..是的,我不理解AJAX的异步部分。。因为我是AJAX新手。我不知道你的问题是什么。你显然不了解AJAX的
异步
部分。我只想使用AJAX在数据库中存储值。在提交事件上,但提交事件发生在AJAX调用响应之前。。。但若我在响应时添加警报,那个么它将存储在数据库中,这意味着我们需要添加延迟,所以我们将在数据库中获得价值..是的,我不理解AJAX的异步部分。。因为我是AJAX新手,上面的代码对我来说不起作用,因为用户不能重定向到下一页。与下一个问题页面类似。如果希望用户自动重定向,则需要为Ajax创建一个回调函数,该函数将在Ajax请求完成时调用,该函数可以将浏览器发送到下一个页面。当然,如果这就是你所做的,那么你真的只是使用了错误的工具,正确的工具应该是抛弃JavaScript(Ajax),只使用普通HTML提交表单。与下一个问题页面类似。如果希望用户自动重定向,则需要为Ajax创建一个回调函数,该函数将在Ajax请求完成时调用,该函数可以将浏览器发送到下一个页面。当然,如果这就是你所做的,那么你真的只是使用了错误的工具,而正确的工具应该是抛弃JavaScript(Ajax),只使用普通HTML提交表单。