cxh1299543968
KaisonChen
2016-09-07 06:25
采纳率: 23.5%
浏览 3.6k
已采纳

js模拟表单提交弹出新窗口被浏览器拦截,如何解决?

自定义表单比较,弹出的新窗口被拦截,如何解决这个问题?代码如下

 function gotoLife_do(url,p){
    $("#disabledImageZonelife").hide();
    post(url,p); 
}

 function post(URL, PARAMS) { 
    var temp = document.createElement("form"); 
    temp.action = URL; 
    temp.method = "post"; 
    temp.setAttribute("target" , '_black' );
    temp.style.display = "none"; 
    for (var x in PARAMS) { 
        var opt = document.createElement("textarea"); 
        opt.name = x; 
        opt.value = PARAMS[x]; 
        temp.appendChild(opt); 
    } 
    document.body.appendChild(temp); 
    temp.submit(); 
    return temp; 
}
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • showbo
    已采纳

    弹出新窗口需要用户交互的(就是用户点击,移动鼠标到对象上什么的)才行,要不只能在当前窗口跳转

    点赞 评论
  • hunhun1122
    hunhun1122 2016-09-07 06:33

    在浏览器中设置可以弹出。。。。。

    点赞 评论
  • u013080099
    msdn_duan 2016-09-07 06:42

    如showbo所说,需要用户手动点击的window.open才不会被拦截

    点赞 评论
  • cxh1299543968
    KaisonChen 2016-09-07 06:56

    我现在的流程是这样的:首先用户点击一个按钮,触发一个function,这个function会有一个post请求向后台获取数据,获取数据之后,再做上面的自定义表单的提交。

    点赞 评论
  • zhuzige521888
    一个程序猿子 2016-09-07 07:47

    为什么一定要表单提交?直接ajax提交就好了啊。

    点赞 评论

相关推荐