2 回答

TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊
$.post 是一個(gè)單獨(dú)的異步請(qǐng)求。window.location.reload 只是重新加載頁(yè)面,但不會(huì)考慮所有異步請(qǐng)求。
如果您不使用 打印 $_POST['correcto_obligatorio'] var_dump,而是登錄到文件,您將在那里看到該值。
有兩種解決方案適合您。
1)等待ajax結(jié)果并響應(yīng)。
$.post( "index.php", {
correcto_obligatorio: true
}, function (data) {
if (data.passed_validation) {
window.location.reload("index.php")
}
});
2) 其次是張貼表格
<form action="/index.php" method="POST" id="my_form">
<input type="hidden" name="correcto_obligatorio" value="1"/>
</form>
<script>
function myFunc() {
$("#my_form").submit()
}
</script>
最常見(jiàn)和正確的方法是第一種解決方案。

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超4個(gè)贊
您的代碼不會(huì)等待帖子完成。您基本上發(fā)送請(qǐng)求并將瀏覽器重定向到 index.php,而無(wú)需等待服務(wù)器回復(fù)您。考慮使用回調(diào)函數(shù):
$.post( "index.php", {
correcto_obligatorio: true
}, function( result) {
if (result.passed) {
window.location.reload("index.php")
}
});
假設(shè)服務(wù)器使用包含傳遞的參數(shù)的有效 json 對(duì)象進(jìn)行響應(yīng)(內(nèi)容類型應(yīng)設(shè)置為 application/json )
- 2 回答
- 0 關(guān)注
- 201 瀏覽
添加回答
舉報(bào)