3

目前我在将一些值从 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.'}';
?>

我想将name变量值从 PHP 返回到 jQuery 一次status = 1意味着成功,但我仍然没有运气。

4

2 回答 2

5

JSON 具有非常严格的语法。

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

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

于 2012-12-19T03:51:23.963 回答
1

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

从这个指令:

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

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

{“状态”:1,你好}

这是无效的。

于 2012-12-19T03:53:14.377 回答