[英]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.