[英]Sending form data with jQuery post method not working
嘗試通過 jQuery Ajax post 方法更新 SQL Server 中的刪除標志。 我不確定問題是出在我的 PHP 還是 jQuery 代碼上。 當我按下刪除按鈕時,什么也沒有發生,但網絡開發工具沒有表明語法有任何問題。
這是 HTML:
<div class='dialog' id='editForm' title='Edit' >
<form method='POST' id ='editFo' name = 'editFo' action='post' enctype='multipart/form-data'>
</form>
</div>`
這是按鈕的html:
<button id="deleteFormbtn" >Delete</button>
這是jQuery代碼:
$("#deleteFormbtn").click(function(){
$.post ( "deleteRow.php", $("#editForm: input").serializeArray(), function(data){
alert(data);
});
});`
這是PHP代碼:
`
require_once ('sql/connectionstring/connectionstring.php');
$conn = SQLServerConnection();
if(isset($_POST['vendor'])){
$loc_sql = "SELECT TOP 1 loc_id FROM <table> WHERE loc_name = ?";
$parms = array($_GET['loc']);
$loc = sqlsrv_query($conn, $loc_sql, $parms) or die (print_r ( sqlsrv_errors(), true));
while ($q = sqlsrv_fetch_array($loc)){
$loc_id = $q["loc_id"];
}
$username = $_POST['username'];
$password = $_POST['password'];
$comments = $_POST['comments'];
$vendor_website = $_POST['website'];
$vendor = $_POST['vendor'];
$query = "UPDATE <table> SET <column> = '0' WHERE <column> = ?";
$parms = $username;
$result = sqlsrv_query($conn, $query, $parms) or die (print_r ( sqlsrv_errors(), true));
sqlsrv_close($conn);
}
header('Location: <location>);
?>`
$_POST['vendor']
時可以識別它if(isset($_POST...) { .... }
”未滿足的情況,因此它會返回錯誤。更多地關注 PHP 部分,以 JSON 格式向您發送回復。 類似於:
$data = /** 無論你在序列化 **/;
header('內容類型:應用程序/json');
回聲 json_encode($data);
您需要將type="button"
添加到您的按鈕,否則頁面重新加載並且請求將不會被發送,因為它默認為“提交”。
<button type="button" id="deleteFormbtn" >Delete</button>
此外,您引用的是div
而不是 AJAX 請求中的form
。 您不需要method
或action
屬性,AJAX 會為您處理。 發送整個表單,而不僅僅是input
。
<div class='dialog' id='editForm' title='Edit' >
<form id ='editFo' name = 'editFo' enctype='multipart/form-data'>
</form>
</div>
$("#deleteFormbtn").click(function(){
$.post ("deleteRow.php", $("#editFo").serialize(), function(data){
alert(data);
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.