在jqery的ajax回调函数中,谷歌浏览器window.open无效,不在ajax回调函数中就可以,window.location.href都可以,而其他浏览器则都可以,有什么解决办法没.

解决方案 »

  1.   

    你其实只是想打开个新窗口,可以不使用open的
    window.location.href就是超链接,你可以通过修改
    超链接的target属性完成在新窗口中打开的功能
    target="_blank";
      

  2.   

    window.location.target="_blank";
    但是你别忘了改回来,要不这句执行完以后就都是在新窗口中打开了
    _blank -- 在新窗口中打开链接 
    _parent -- 在父窗体中打开链接 
    _self -- 在当前窗体打开链接,此为默认值 
    _top -- 在当前窗体打开链接,并替换当前的整个窗体(框架页) 
    你可以通过修改target的值,来动态改变你打开窗口的方式
      

  3.   


    location有target的属性吗,用window.location.target='_blank',还是在当前页面进行跳转,不是在新窗口中打开 
      

  4.   

    好像window.open打开的窗口被浏览器拦截了,有什么办法可以解决吗
      

  5.   

    loncation有target属性,但是确实是不能在新窗口中打开,这个我之前没试过,我之前一般都这么写的<html>
      <head>
        <title>MyHtml.html</title>
    <script type="text/javascript">
    function a()
    {
    document.getElementById("aaa").target="_blank";
    document.getElementById("aaa").action="http://www.baidu.com";
    document.getElementById("aaa").submit();
    }
    </script>
      </head>
      
      <body>
        This is my HTML page. <br>
        <form action="" id="aaa"></form>
        <input type="button" onclick="a()">
      </body>
    </html>窗口被拦截需要在浏览器里的安全级别里设置,或者是杀毒软件的事,跟程序没关系了
      

  6.   

    ajax是异步加载,不会刷新整个页面的,所以window.open无效
      

  7.   

    说错了,其实chrome是可以这样做的,chrome个人感觉是最标准的一个浏览器,我刚做的一个项目就是用了很多这样方法。
      

  8.   


    google chrome是不会拦截js脚本的,IE会出现这种情况。