将parseJSON(data)分配给ajax数据变量

时间:2019-10-17 18:24:40

标签: jquery json ajax

我想将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

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})
      });
    });