JSON return value



目前我在将一些值从 PHP 返回到 jQuery 时遇到问题 - 不知道该怎么做

$(document).ready(function(){
  $('#testForm').submit(function(e){
    $.post('submit.php',$(this).serialize(),function(msg){
        $('#submit').val('Submit');
        if(msg.status){
            $('#testForm').html(msg);
        }
        else {
            $('#testForm').html("fail");
        }
    },'json');
});
});
<?php
$name = $_POST['name'];
$email = $_POST['email'];
//echo json_encode(array('status'=>1,'html'=>$name." : ".$email));
echo '{"status":1,'.$name.'}';
?>

我想将 PHP 的 name 变量值返回给 jQuery,status = 1这意味着成功,但我仍然没有运气这样做。

JSON 具有非常严格的语法。

但是,在您的情况下,您失败了,因为您甚至没有指定属性名称,您只有一个没有引号的裸值。

只需使用 json_encode ,它将为您处理所有边缘情况。

您确定返回的是有效的 json 字符串吗?

根据此说明:

echo '{"status":1,'.$name.'}';

假设$name是一个纯字符串,例如"hello",你将返回这个 json 字符串:

{"状态":1, 你好}

这是无效的。

最新更新