我建立一個事件來改變與Ajax和JSON編碼混淆的產品名稱正常工作JSON編碼不AJAX功能
<div class="new-product-name"></div>
<div class="new-product-num"></div>
然後腳本是
$(function(){
$.ajax({
method: "POST",
url: "fetch-product.php",
data: {keyword: 12}
}).done(function(msg){
$(".new-product-name").html(msg);
$.getJSON("fetch-product.php", function(data) {
$(".new-product-name").html(data.a);
$(".new-product-num").html(data.b);
});
});
});
在
fetch-
product.php
$query = "SELECT * FROM `product_details` WHERE id='". $_POST['keyword']."'";
$result = $conn->query($query);
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
$name=$row["p_name"];
$num=$row["num"];
}
echo json_encode(array("a" => $name, $num));
此處的產品詳細信息正在提取正確,即使在$(".new-product-name").html(msg);
它顯示'{"a":"Product1", "b":"22"}'
,它進入到$.getJSON("fetch-product.php", function(data) { }
但data.a
,data.b
顯示null
。
爲什麼是data.a
,data.b
null
?我花了太多時間。請幫助解決這個錯誤。
因爲你不在第二個查詢中再次發送參數 - 所以第二個響應大部分是空的。爲什麼你發送兩個請求呢? – Sirko
在console.log(數據)顯示對象{a:null} –
您能否請解答在答案部分。我不明白。 –