我一直試圖解決幾小時和幾小時現在的問題如下:我不能停止#myform行動後的重定向數據已成功提交給數據庫。我試過多種方法,但似乎沒有任何工作。我迫切需要幫助!試圖阻止表單提交後重定向(返回false和prevent.default不工作!)
的代碼:
HTML(mainview.php):
<div id="submitAccordion">
<form id="myForm" action="userFiles.php" method="post">
Name: <input type="text" name="accordionName" /><br />
<input id="sub" type="submit" name="go" />
</form>
<span id="result"> </span>
</div>
的Javascript(mainview_script.js):
$("#sub").click(function() {
var data = $("#myForm :input").serializeArray();
$.post($("#myForm").attr("action"),
data, function(info) {
$("#result").html(info); })
});
$("#myForm").submit(function() {
return false;
});
PHP(userFiles.php):
session_start();
require_once 'database.php';
if (isset($_SESSION['user_id'])) {
$sql = "INSERT INTO useraccordion (id, h3) VALUES (:id, :accordion)";
$stmt = $conn->prepare($sql);
$stmt->bindParam(':id', $_SESSION['user_id']);
$stmt->bindParam(':accordion', $_POST['accordionName']);
if ($stmt->execute()) {
echo "Succesfully inserted";
} else {
echo "Sorry, there was an error";
}
}
我試過ajax方法,prevent.defau等等,但沒有工作!
使'輸入#sub'不'類型=「提交」 ',只是'type =「button」'。你都提交表單併發送一個Ajax請求。很可能js被執行得太晚了,已經在重定向的時候了。也刪除'$(「#myForm」)。submit(' – kecer
使用窗口。重定向方法在ajax成功響應。 –
使用窗口。在ajax成功響應中重定向方法 - 使用窗口? –