我想将parseJSON(data)分配给ajax数据变量。
数据包含:
[{
"master_id":"1",
"prod":"prod1",
"cust":"cust1"
},
{
"master_id":"4",
"prod":"prod4",
"cust":"cust4"
}
]
js:
data = $.parseJSON(data);
for (var i = 0; i < data.length; i++){
$("#mas").append('<li id="mid"><a class="coba2" id='+data[i]['master_id']+' name="master" href="#">'+data[i]['MASTER_ID']+'</a></li>');}
在li标签中,它正在打印master_id的值。但是,当将此id传递给ajax数据时,它将引发Exception。
$(document).on('click', '.coba2', function(){
var id= $(this).attr('id');
console.log('li id '+typeof(id)); // string
$.ajax({
url : 'next.php',
type : 'POST',
data : {'master_data': id}
未捕获的SyntaxError:意外令牌{在JSON中的位置1
答案 0 :(得分:-2)
您不能从已经为JSON的对象中解析JSON,而是可以使用封装在字符串中的对象中的parseJSON。
如果您的问题是通过POST发送JSON数据,请尝试这样做:
$(document).on('click', '.coba2', function(e){
var id= $(this).attr('id');
$.ajax({
url : 'next.php',
type : 'POST',
dataType: 'json',
contentType: 'application/json',
data : JSON.stringify({'master_data': id})
});
});