我正在尝试获取具有名称和location属性的对象。我需要location属性的坐标才能在该位置创建标记。但是,运行此代码会导致Uncaught SyntaxError:JSON在位置1处出现意外令牌o。我在PUT方法中使用了JSON.stringify(data)。



function getLocation(){
	var name = $("#username").val();
	console.log('getLocation()');
	if(name != ''){
		$.ajax({
			type:	'GET',
			url:	'../../' + name,
		    async: true,
		    success:function(data){
		    	var oData = JSON.parse(data);
		    	var marker = new L.marker(oData.location);
				marker.addTo(map);
		    	$("#username").val('');
		    },
			error: function(XMLHttpRequest, textStatus, errorThrown) { alert('Not found'); }
		});
	}
}

最佳答案

可能是您的结果已经被JSON解析了

  function getLocation(){
    var name = $("#username").val();
    console.log('getLocation()');
    if(name != ''){
      $.ajax({
        type: 'GET',
        url:  '../../' + name,
          async: true,
          success:function(data){
            var marker = new L.marker(data.location);
          marker.addTo(map);
            $("#username").val('');
          },
        error: function(XMLHttpRequest, textStatus, errorThrown) { alert('Not found'); }
      });
    }
  }


或者如果您获得一个数组

  function getLocation(){
    var name = $("#username").val();
    console.log('getLocation()');
    if(name != ''){
      $.ajax({
        type: 'GET',
        url:  '../../' + name,
          async: true,
          success:function(data){
            var marker = new L.marker(data[0].location);
          marker.addTo(map);
            $("#username").val('');
          },
        error: function(XMLHttpRequest, textStatus, errorThrown) { alert('Not found'); }
      });
    }

10-05 20:44
查看更多