gpt4 book ai didi

jquery - ajax 成功 : function (msg) undefined

转载 作者:行者123 更新时间:2023-11-27 23:23:57 25 4
gpt4 key购买 nike

你好,我有这个返回 msg undefined 的脚本。在 consol 中它返回 jsondata 但是当我发出警报或当我试图验证它时,它不起作用。

$(function() {
$(".aplica_bt").click(function(e) {
e.preventDefault();
var href = $(this).attr('href');

$.ajax({
url: href,

datatype: "json",
success: function(msg) {
alert(msg.exista);
if (msg.exista == "yes") {
alert('ai aplicat');
}
if (msg.aplicat == "yes") {
$('#modal_succes').modal('show');
}
},
});
});
});

enter image description here

这里还有返回json的php代码

<?php

$id_c=$_GET['id_c'];
$id_j=$_GET['id_j'];

$stmt=$dbh->prepare("SELECT * FROM Aplicatii where id_c=:id_c and id_j=:id_j");
$stmt->bindParam(":id_c",$id_c);
$stmt->bindParam("id_j",$id_j);
$stmt->execute();
if($row=$stmt->fetch())
{
$arr = array('exista' => 'yes');
echo json_encode($arr);
}
else
{
$stmt=$dbh->prepare("INSERT INTO Aplicatii (id_c,id_j) VALUES (:id_c,:id_j)");
$stmt->bindParam(":id_c",$id_c);
$stmt->bindParam("id_j",$id_j);
$stmt->execute();
$arr = array('aplicat' => 'yes');
echo json_encode($arr);
}
?>

console.log 的响应:

{"exista":"yes"}

最佳答案

console.log(msg)返回{"exista":"yes"}时,它不是一个对象,它是一个字符串。因此,尝试访问一个属性,如 msg.exista,将返回 undefined

当您在 AJAX 请求中设置错误的 dataType 时,可能会发生这种情况,在您的示例中正确设置为 JSON

所以问题出在 PHP 方面,您需要将正确的 Content-Type 添加到响应 headers

header("Content-Type: application/json");

关于jquery - ajax 成功 : function (msg) undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39526274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com