如果这些update不必须在同一事务中,可以将其批量传入后台同意操作。 我看了上面的描述,主要问题应该是每次操作都要连接盒断开一次数据库这个操作上耗时太多。
刚开始的时候,每次循环是获取不到ajax中的值的,在ajax中,如果想获取到变量I,那么也是有问题了。解决了半小时,终于明白了问题的所在:
for 循环是一个单线程的东西,而ajax是多线程的,之所以称之为异步同步,是因为执行到ajax的时候去后台开启了一个线程,但是for循环本身就是一个单线程的东西,那么执行到ajax的时候,ajax开启了一个线程,for
循环是没有等他的,知道for循环结束的时候,才会把ajax返回的数据拿回来,所以会出问题
解决办法:只需要把ajax改成同步的就可以了,每次for循环,都要去加载ajax方法,并且拿到他返回的数据,只需要在ajax中间加一个代码就可以搞定了。async: false,//设置成同步
确定了目标之后你成功了10%,但是剩下的90%之中,多数是坚持不懈的努力,你会遇到迷茫、遇到挫折,此时不要放弃,回忆你立定目标的决心,成功就在你眼前!习惯很容易养成,一件事情,只要你能咬牙坚持10天,它自然就成了习惯! 现代人变得越来越浮躁,不妨静下心来用音乐洗礼你的心灵!
你都知道 ajax还没有返回所以那就要把 var data = {"name":name,"id":id}
content.push(data)
这两行放到ajax的回调里面