把代码贴出来看一下
post改成同步的试试,别用异步提交,浏览器会默认阻止异步回调后的js打开新页面的情况。
先让用户操作直接打开新窗口,在新窗口里面去发 post 请求,在请求回调里面直接跳转就行了
多谢各位的帮助;我已经解决这个问题了;
1. 模拟form表单提交的方式,正常情况下是可以解决弹框被阻止的情况的,但是在异步请求回调之后再用此方式,也会被浏览器阻止。
2.window.open常规下更不用说了,更加会被浏览器阻止。
3.改成a连接让用户点击触发跳转不符合需求设定
4.异步请求改成同步请求,更是不可能,同步请求更会导致浏览器暂时性卡死。。
真正的解决方式是在window.open的基础上加以改造:
这中方式有个弊端现象,也就是在不知道post之后成功失败与否的情况下,都要先开打一个新窗口,post之后才能知道这个新窗口是不是有用。没用的话再close掉,这样在没用的情况下 ,就会看到有个新Tab打开了,忽然又被关闭了。 这个大家可以综合需求考虑实现。