我有一个表单,它将数据发送到服务器。我使用PHP脚本处理表单,它可以返回3个不同的JSON字符串:
One
exit("{\"success\":\"false\", \"msg\":\"Las claves no cohinciden\"}");2
exit("{\"success\":\"false\", \"msg\":\"".$failure->getMessage()."\"}");三
exit("{\"success\":\"true\",\"msg\":\"El usuario: $nombreUsuario ha sido dado de alta correctamente.\"}");第一和第二字符串是要显示的错误。第三个字符串是正常情况。当脚本返回其中一些值时,我会捕获ExtJs的响应:
var respuesta = Ext.JSON.decode(response.responseText);但是,何时这样做:
console.log(respuesta);Firebug控制台说"respuesta“是不确定的。知道吗?
发布于 2012-12-26 13:16:10
当您输出用于AJAX中的JSON时,最好为JSON设置头部并返回格式正确的JSON。在下面的示例中,我们使用响应创建一个普通的PHP数组,并使用json_encode()将其转换为JSON。
试试看。我以前曾遇到过一些问题,因为Javascript以前没有适当的内容类型和格式,所以没有将字符串作为JSON。
<?php
$response = array("success" => "false", "msg" => "Las claves no cohinciden");
header("Content-type: application/json");
exit(json_encode($response));
?>如果你有jQuery..。您可以执行$.parseJSON('your string');从字符串输出JSON。
发布于 2012-12-26 13:37:13
您可以使用这个url测试您的Json代码:
https://stackoverflow.com/questions/14041001
复制相似问题