我有一个从用户那里获取价值并将其存储到数据库的表单。 在提交表单时,它使用ajax调用调用 action.php 文件。
e.preventDefault();
$.ajax({
type: "POST",
url: "action.php",
data: senData,
dataType: "JSON",
success: function(data) {
$("#name").val("");
$('.msg').fadeIn(500);
$('.msg').text("" + data.result + "");
}
});
值存储在数据库中没有任何错误,但我想在 msg div中提交表单后向用户显示通知。
在我的action.php
文件中,我添加了JSON Encode
语句来返回消息。
$msg = 'Thanks Yo Yo';
echo json_encode(array("result" => $msg));
但是它无法正常工作,即当我提交表单时,它会将数据存储到数据库中,并且网页会自动刷新,而不会在.msg
div中显示任何消息。
我做错了什么,有没有更好的方法呢?
答案 0 :(得分:1)
当JSON返回到您的javascript时,您需要解析它。
// Parse the response to JSON
var res = JSON.Parse(data);
$('.msg').text(res.result);
您的代码应如下所示。
e.preventDefault();
$.ajax({
type: "POST",
url: "action.php",
data: senData,
dataType: "JSON",
success: function(data) {
var res = JSON.Parse(data);
$("#name").val("");
$('.msg').fadeIn(500).text(res.result);
}
});