第一次使用json。我目前将一个邮政编码发送到php页面,并尝试将结果存储为json:
$("#make_ajax_call").click(function()
{
var form_postcode = $("#postcode").val();
$.ajax({
type: "POST",
url: 'mapping-ajax.php',
data: { postcode: form_postcode},
success: function(data)
{
var jsonObject = data;
var trimmedpostcode = jsonObject.trimmedpostcode;
alert(jsonObject);
alert(jsonObject.trimmedpostcode);
$('#result').html(data);
//alert('Load was performed.');
}
});
});
另一方面,我使用php函数echo json_encode($return_array);
这两个警报给了我:
{"trimmedpostcode":"CO125WL","success":true,"outputstring":"CO125WL<br\/>"}
和
Undefined
为什么第二个不返回“CO125WL”?我是否需要以某种方式告诉javascript它是一个json对象?
答案 0 :(得分:3)
你试过了吗?
dataType: 'json'
这是我通过ajax调用在Javascript中提取我的json信息的方式。
答案 1 :(得分:1)
你明白了。你需要打电话:
var obj = JSON.parse(jsonstr);
这会将JSON解析为JavaScript对象。
答案 2 :(得分:0)
我是否需要以某种方式告诉javascript它是一个json对象?
是的,您需要告诉它它是 json字符串。将响应的mimetype设置为适当的“application/json
”,jQuery的智能将自动解析文本并使用对象而不是字符串调用success
函数。
或者您可以将jQuery调用的dataType
设置为"json"
,请参阅jQuery.ajax()
documentation。