Ответ 1
Включить строку в одинарной кавычке, она должна работать. Попробуйте это.
var jsonObj = '{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}';
var obj = $.parseJSON(jsonObj);
Как преобразовать строку в объект? Я столкнулся с этой проблемой, потому что я пытаюсь прочитать элементы в строке JSON, используя "каждый".
Моя строка приведена ниже.
jsonObj = "{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}"
Я использовал eval
, и я использовал
var obj = $.parseJSON(jsonObj);
И я также использовал
var obj= eval("(" + jsonObj + ")");
Но он все время приходит null
Включить строку в одинарной кавычке, она должна работать. Попробуйте это.
var jsonObj = '{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}';
var obj = $.parseJSON(jsonObj);
Сочетание Saurabh Chandra Patel ответ с помощью Molecular Man , вы должны иметь что-то вроде этого:
JSON.parse('{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}');
попробовать:
var myjson = '{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}';
var newJ= $.parseJSON(myjson);
alert(newJ.TeamList[0].teamname);
Ваша строка недействительна. Двойные квоты не могут быть внутри двойных кавычек. Вам следует избегать их:
"{\"TeamList\" : [{\"teamid\" : \"1\",\"teamname\" : \"Barcelona\"}]}"
или использовать одинарные кавычки и двойные кавычки
'{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}'
только с js
JSON.parse(jsonObj);
Быстрый ответ, эта работа eval:
eval('var obj = {"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}')
Может быть, эта помощь:)
$('body').on('blur','.postal_code_blur_class',function()
{
var post_code =$(this).val();
$.ajax({
url :'http://maps.googleapis.com/maps/api/geocode/json?address='+post_code+'&sensor=true',
dataType:'json',
type : 'get',
success: function (response)
{
var obj = JSON.stringify(response); //convert to string
var obj1 = $.parseJSON(obj); //convert string to obj
if(obj1.status=='OK')
{
//assign value
$('.city_class').val(obj1.results[0].address_components[1].long_name);
$('.state_class').val(obj1.results[0].address_components[3].short_name);
$('.country_id_class').val(obj1.results[0].address_components[4].short_name);
}
//$('.city_class').val(obj.city);
//$('.state_class').val(obj.state);
//$('.country_id_class').val(obj.country);
return true;
},
error : function ()
{
console.log('internal server error');
}
});
});
Без оценки
Ваша исходная строка не была реальной строкой.
jsonObj = "{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}"
Самый простой способ обернуть все это в одну цитату.
jsonObj = '"{"TeamList" : [{"teamid" : "1","teamname" : "Barcelona"}]}"'
Затем вы можете объединить два шага, чтобы разобрать его в JSON:
$.parseJSON(jsonObj.slice(1,-1))