Javascript 如何读取JSON字符串[jQuery]
Ajax调用Javascript 如何读取JSON字符串[jQuery],javascript,jquery,ajax,json,Javascript,Jquery,Ajax,Json,Ajax调用 $( "#day").datepicker({ onSelect: function(request) { $.ajax({ type: "POST", url: '${pageContext. request. contextPath}/url.htm', data: JSON.stringify({ id: '${someId}'
$( "#day").datepicker({
onSelect: function(request) {
$.ajax({
type: "POST",
url: '${pageContext. request. contextPath}/url.htm',
data: JSON.stringify({
id: '${someId}'
}),
dataType: 'json',
contentType: "application/json;charset=utf-8",
success: function (response) {
if(response.b === true) {
$("#fruit").val(response.a);
}
}
}).fail(function(xhr, status, error){
console.log('error:' + status + ':' + error + ':' + xhr.responseText);
});
}
});
来自ajax
调用的字符串响应如下
{
"a": "apple",
"b": true
}
我试着使用var json=$.parseJSON(response)读取它代码>并且我得到异常未捕获的语法错误:意外的令牌o
console.log(响应)代码>将控制台上的数据显示为
Object {
"a": "apple",
"b": true
}
我想取“a”和“b”的值。如何做到这一点 它已经是JSON格式了。你不需要再解析它了
像这样使用它
response.a;
response.b;
选中此项:
var ajaxResult = '{"a":"apple","b": true}';
var json= $.parseJSON(ajaxResult );
console.log(json.a);
请检查它我做了一些改变:)如果有任何疑问,请问我
$( "#day").datepicker({
onSelect: function(request) {
$.ajax({
type: "POST",
url: '${pageContext. request. contextPath}/url.htm',
data: JSON.stringify({
id: '${someId}'
}),
dataType: 'json',
success: function (response) {
if(response['b'] === true) {
$("#fruit").val(response['a']);
}
}
}).fail(function(xhr, status, error){
console.log('error:' + status + ':' + error + ':' + xhr.responseText);
});
}
});
不需要再次解析它,使用response.a
和response.b
来访问a和b的值response
似乎不是一个字符串。执行typeof response
,您将看到它已经是一个根据json响应自动创建的对象,而不是一个字符串。你可以像@PranavRam所说的那样直接访问它的属性。或者,您也可以像这样使用索引器操作符:response[“a”]
和response[“b”]
。共享ajax请求的代码……….设置数据类型:'json'
与json数据类型,尝试两种形式:控制台.log(response['d')代码>和console.log(response.d)代码>;仍然没有定义