2016-06-10 61 views
0

其他嘗試在此腳本中使用window.open('url', '_blank')可按需要工作。這一個,不打開新標籤,在confirm()提示符後面使用不同的邏輯。如果在其中找到「保留」或者重定向到目標頁面,邏輯是顯示頁面的一部分。追蹤爲什麼window.open不起作用

作爲$.ajax成功處理程序的結果,重定向是自動的。重定向的兩種方法都不做任何更改。

形式第2種方法:

<form method=\"get\" id=\"formgoregistry\" name=\"goregistry\" action=\"\" target=\"_blank\"> 
</form> 

javascript函數的問題:

function getRegistryInfo(num) { 
    // for 2nd method, set the form's action 
    $('#formgoregistry').attr('action', 'http://somesite.com/somefile?n=somevalue'); 

    var response = $.ajax({ 
     type: 'POST', 
     url: 'purchases_registry.php', 
     dataType: 'html', 
     data: { number: num }, 
     success: function(data) { 
      console.log('response = '+data); 
      if (data.indexOf('Reserved') > 0) { 
       // work with the result 
       // Code in here works fine 
       .... 
      } 
      else { 
       // wrong data, redirect to outside page 
       // ** Neither of these method open a new tab 
       // 1st method 
       var url = 'http://somesite.com/somefile?n=somevalue'; 
       console.log('url = '+url);    // prints the correct url 
       var w = window.open(url, '_blank');  // NO new tab or error 
       console.log('window = '+w);    // window = undefined 

       // 2nd method (setting form's action beforehand) 
       console.log(document.goregistry.action); // prints the correct url 
       document.goregistry.submit();    // NO new tab or error 
      } 
     } 
    }); 
} 

我想知道如果未在所述窗口的問題和原因的一部分。

回答

0

使用該腳本打開新窗口的鏈接:

echo "<form action=\"your_link.php?id=\" method=\"post\" target=\"myWindow\", onsubmit=\"window.open('', this.target, 'width=300,height=400,resizable=no,scrollbars=no');return true;\"> 

或HTML語言:如果您在使用A HREF方法只是單純的onsubmit到的onclick改變

<form action="your_link.php?idk=$id=" method="post" target="myWindow", onsubmit="window.open('', this.target, 'width=300,height=400,resizable=no,scrollbars=no');return true;"> 

,這就是我知道,希望它有幫助,祝你好運!

+0

提交需要用JavaScript。 'window.open('url');'或'document.goregistry.submit();' – David