Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
循环的Jquery没有停止_Jquery_Post_For Loop - Fatal编程技术网

循环的Jquery没有停止

循环的Jquery没有停止,jquery,post,for-loop,Jquery,Post,For Loop,用户可以向其他用户发送短消息。名称是commaseparetad,在拆分字符串后,我希望使用for循环向不同的用户发送相同的消息 如果数据库中没有这样的用户,服务器会通知用户并停止进程。如果用户按下了ok按钮,该过程将继续 我的问题是循环从不停止,它只会提醒最后一个错误的名称。这可能是因为$.post的默认模式是异步运行的,因此循环一直运行到最后,浏览器会对帖子进行排队。当错误最终发生时,循环结束,最后一条记录就位 尝试更改为使用$.ajax,并将async设置为false。作为第一步,这是非常

用户可以向其他用户发送短消息。名称是commaseparetad,在拆分字符串后,我希望使用for循环向不同的用户发送相同的消息

如果数据库中没有这样的用户,服务器会通知用户并停止进程。如果用户按下了ok按钮,该过程将继续


我的问题是循环从不停止,它只会提醒最后一个错误的名称。

这可能是因为$.post的默认模式是异步运行的,因此循环一直运行到最后,浏览器会对帖子进行排队。当错误最终发生时,循环结束,最后一条记录就位


尝试更改为使用$.ajax,并将async设置为false。

作为第一步,这是非常低效的。将响应对象与消息、主题和用户列表打包,并让服务器进行解包不是更好吗?它会将客户端的带宽和延迟从on减少到O1!比如:

   for (var i=0;i<ToArray.length;i++) {
    $.post('jquery/messages.php',{To:ToArray[i],subject:subject,msg:msg},function(data){jAlert(data);}); 
  } 

这将使您的服务器能够尝试向每个用户发送消息,并为消息失败的所有用户发回消息,而不仅仅是第一个用户

好的,这有帮助,但只有在正常警报下。与贾勒茨有着同样的关系
$.post('jquery/messages.php',{To:ToArray,subject:subject,msg:msg},function(data){jAlert(data);});