我試圖提交一個簡單的窗體,在彈出的對話框中,然後關閉對話框。 我見過的最好的文章是Submit a form in a popup, and then close the popup,但它似乎間歇性地爲我工作。表單啓動的頁面是一個修改數據庫記錄的PHP頁面。我認爲一旦發送請求,即使啓動窗口關閉,PHP頁面也會執行。顯然不是。有時表格會更新,有時不會。看起來如果SQL操作不夠快,頁面將被關閉並且進程被終止。提交表單並關閉窗口 - 正確的方法?
下面的代碼:
<form id="xlationform" action="updatexlation.php" method="post" onsubmit="return closeForm(this);">
Source: <br>
<textarea disabled name="sterm" rows=10 cols=50><?php echo $source ?></textarea><br><br>
Translation: <br>
<textarea name="xlt" rows=10 cols=50><?php echo $xlation ?></textarea><br><br>
<input type="hidden" name="id" value="<?php echo $termid ?>">
<input type="submit" value="Update">
</form>
<script>
function closeForm(f) {
f.submit();
window.close();
}
</script>
什麼工作了這一點的最好辦法?我希望窗口關閉,但數據庫操作需要先完成,如果可能的話,我不想再次查詢數據庫。謝謝你的幫助。
在updatexlation.php中這樣做: – Stv
使用AJAX,關閉窗口和返回false。但是,真的,你應該避免使用彈出窗口。 – PHPglue