Php JSON解析错误给出类似“SyntaxError:JSON.parse:unexpected character at line”的内容
我正在使用下面的ajax jquery代码 但它在以下位置给出了错误SyntaxError:JSON.parse:意外字符。。。Php JSON解析错误给出类似“SyntaxError:JSON.parse:unexpected character at line”的内容,php,jquery,json,Php,Jquery,Json,我正在使用下面的ajax jquery代码 但它在以下位置给出了错误SyntaxError:JSON.parse:意外字符。。。 问题可能在这一行:data=JSON.parsedata 您已经指定了数据类型:“json”,它将在内部为您解析json—不需要data=json.parsedata;您确定在firebug中看到的是字符串,而不是JS对象,因为如果数据已经被解析,那么JSON.parsedata将计算为JSON.parse“[object object]”;当然,这是无效的JSON@
问题可能在这一行:data=JSON.parsedata 您已经指定了数据类型:“json”,它将在内部为您解析json—不需要data=json.parsedata;您确定在firebug中看到的是字符串,而不是JS对象,因为如果数据已经被解析,那么JSON.parsedata将计算为JSON.parse“[object object]”;当然,这是无效的JSON@EliasVanOotegem如何知道它是Firebug中的字符串还是对象@ᾠῗᵲᄐᶌ 我删除了它,但它不起作用,当我警告data.status时,它说undefinedyou can do a console.logdata-您将能够在firebug控制台中判断它是对象还是字符串
$('#frm_manage_staff').on('change', '#ddn_staff', function () {
var ddn_staff = $('#ddn_staff').val();
if (ddn_staff !== '' && $.isNumeric(ddn_staff)) {
$.ajax({
type: 'POST',
url: '<?php echo base_url('ledger/get_staff_detail'); ?>',
data: 'ledger_id=' + encodeURIComponent(ddn_staff),
datatype: 'json',
beforeSend: function () {
$('#ddn_staff_waiting').html('<img src="<?php echo base_url('images/loader.GIF'); ?>">');
},
success: function (data)
{
data = JSON.parse(data);
$('#roles_container').find(':checkbox').prop('checked', false);
if (data.status === 'success') {
$('#txt_user_name').val(data.username);
if (data.roles !== '') {
var roles = data.roles.split(',');
if (roles.length > 0) {
$('#roles_container').find(':checkbox').each(function () {
for (var i = 0; i < roles.length; i++) {
if ($(this).val() === roles[i]) {
$(this).prop('checked', true);
break;
}
}
});
}
}
} else {
$('#txt_user_name').val('');
}
$('#ddn_staff_waiting').html('');
}
});
}
});
{"status":"success","username":"dfdf","roles":"manage_shows_view,cash_inward,contra_entry"}