簡體   English   中英

PHP超時后自動關閉窗口

[英]PHP automatically close window after timeout

我能夠關上窗戶。 但隨着超時,它似乎不起作用。

此test.php由另一個窗口上的提交按鈕的操作調用。 如果我注釋掉了所有窗口關閉腳本行,那么這個“發送...此窗口將在發送后自行關閉”。 會出現。

這個echo "<script>window.close();</script>"; 將關閉此窗口而不顯示任何回聲。 其他3行,我看到的只是一個空白窗口,根本沒有關閉。 僅在Chrome上我遇到了Server 500錯誤。 我試過Firefox,Safari和Chrome。

有什么建議么?

test.php包含:

<?php

    echo "Sending ... This window will close itself after sending.";

    echo "<script>window.close();</script>";  // this line works

//    echo "<script>setTimeout("window.close()", 5000);</script>";

//    <script type="text/javascript">setTimeout("window.close();", 3000);</script>
//    echo "<script type="text/javascript">setTimeout( function() { window.close(); }, 3000);</script>"

?>
<script type="text/javascript">setTimeout("window.close();", 2000);</script>

告訴我這是否有效,當然將2000改為你想要的;)

您應該將函數傳遞給setTimeout()。

嘗試這個:

<script>setTimeout(function(){ window.close();}, 5000);</script>

更新更新:錯誤500表示“內部服務器錯誤”,您的腳本有問題,而不是結果頁面。

我假設您沒有發布真實的腳本,但除了您輸出的內容之外,還有其他錯誤。 你真的在PHP字符串中寫了雙引號嗎? 因為你真正在做的是編寫編譯錯誤,類似的東西是非法的PHP代碼:

echo "something "quoted" something";

我仍然建議你寫一個正確的函數,而不是一個字符串,但如果你必須,至少要轉義雙引號,或者使用單引號啟動PHP常量字符串,如果你不必解析變量。

echo 'something "quoted" something';//I prefer this

要么

echo "something \"quoted\" something";
//but this still works, altough parser will try to find variable names

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM