我有一個 ajax 函式:
$('#addSiteButton').on('click',function() {
let addSiteOption = $('#enterNewWebsiteLink').val();
const form = new FormData();
form.append('addSiteOption', addSiteOption);
$.ajax({
url: "includes/submit_site.php",
data: { 'data': form },
method: "POST",
contentType: false,
processData: false,
enctype: false,
cache: false,
datatype: "text",
success: function (response, data) {
}
});
我的 PHP 檔案看起來像這樣:
if (isset($_POST['data'])) {
$websitelink = $_POST['addSiteOption'];
}
我的 HTML 看起來像這樣:
<input type="url" form="addsite" class="enterNewWebsiteLink"
id="enterNewWebsiteLink"
name="enterwebsitelink"
placeholder="Enter A New Website">
我得到的錯誤是:Warning: Undefined array key "data"
我嘗試輸出變數addSiteOption并且它正確輸出了 URL。
令人沮喪的是,我一直在檢查/復制這個我之前做過的專案,我讓它作業了,現在我無法區分它們。
我從該頁面的服務器收到 200 回應。
uj5u.com熱心網友回復:
您不能 serialize FormData,并processData: false告訴 jQuery 不要嘗試序列化data:選項。
您應該將 傳遞FormData為data:選項。然后FormData將成為$_POST鑰匙的鑰匙。
JS:
$('#addSiteButton').on('click',function() {
let addSiteOption = $('#enterNewWebsiteLink').val();
const form = new FormData();
form.append('addSiteOption', addSiteOption);
$.ajax({
url: "includes/submit_site.php",
data: form,
method: "POST",
contentType: false,
processData: false,
enctype: false,
cache: false,
dataType: "text",
success: function (response, data) {
}
});
PHP:
if (isset($_POST['addSiteOption'])) {
$websitelink = $_POST['addSiteOption'];
}
你也有一個錯字:datatype:應該是dataType:
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/389885.html
標籤:javascript php 查询 阿贾克斯
