Я пытаюсь получить объект с именем и свойством location. Мне нужны координаты свойства location для создания маркера в этом месте. Выполнение этого кода приводит к тому, что Uncaught SyntaxError: Неожиданный токен o в JSON в позиции 1. Я использовал JSON.stringify (данные) в моем методе PUT.Как получить переменную с координатами из объекта JSON
function getLocation(){
\t var name = $("#username").val();
\t console.log('getLocation()');
\t if(name != ''){
\t \t $.ajax({
\t \t \t type: \t 'GET',
\t \t \t url: \t '../../' + name,
\t \t async: true,
\t \t success:function(data){
\t \t \t var oData = JSON.parse(data);
\t \t \t var marker = new L.marker(oData.location);
\t \t \t \t marker.addTo(map);
\t \t \t $("#username").val('');
\t \t },
\t \t \t error: function(XMLHttpRequest, textStatus, errorThrown) { alert('Not found'); }
\t \t });
\t }
}
Как ваши данные выглядит. Добавить образец вывода JSON –
'неожиданный токен 'o'' обычно означает, что вы пытаетесь проанализировать объект, а не текст JSON, то есть' data' уже был проанализирован с JSON на объект. Проверьте 'data', чтобы увидеть, если он уже является объектом:' console.log (data) ' –
jQuery.ajax задумывается над тем, что такое тип данных, если вы не указали свойство' dataType'. Вам лучше указать его со значением 'json', и тогда вы можете быть уверены, что jQuery уже разобрал строку JSON и передал вам объект, а не строку. – trincot