2012-07-13 59 views
1

我想用javascript打開一個新窗口並將POST參數傳遞給它。我嘗試了很多東西。用javascript打開新窗口併發送POST參數

我最新的代碼看起來像這樣,到目前爲止,但沒有工作(我還沒有嘗試過通過後參數,但之後它會工作,我只能添加隱藏的輸入,使其工作我猜。):

<form method="POST" name="showgraph" onsubmit="javascript:window.open('graph.php', 'Graph', 'scrollbars=yes,titlebar=no,top=300,left=400');" action="javascript:void(0)"> 
<a href="#" onClick="document.showgraph.submit();">Show graph</a> 
</form> 
+0

可能重複[JavaScript提交表單提交請求,如表單提交](http://stackoverflow.com/questions/133925/javascript-post-request-like-a-form-submit) – 2012-07-13 10:53:11

+0

替換'action =「javascript: 「'with'action =」graph.php「',移除'onsubmit = ...'並添加'target =」Graph「'。表格將在新標籤頁/窗口中打開,具體取決於用戶的偏好。 – 2012-07-13 10:54:47

+0

我需要在新窗口中打開它。 – Ales 2012-07-13 11:26:11

回答

2

您需要使用target="_blank"創建隱藏表單並使用javascript提交。使用window.open方法不可能通過POST參數。欲瞭解更多詳情,請訪問link

0

如果您可以控制初始頁面,爲什麼不用PHP創建JavaScript變量?

<script type="text/javascript"> 
<?php 

foreach ($_POST as $key => $val) 
{ 
    echo "var php_$key = $val;"; 
} 

?> 
</script> 

然後,您可以通過JS瓦爾在window.open URL參數的查詢字符串。