あなたが投稿したものは珍しいです:それは単一のプロパティを持つオブジェクトを定義するJSONでMessage
あり、2番目の埋め込まれたJSON文字列を含む文字列値を持っています。非常に奇妙な構造。
それを実際にJSONとして受け取っている場合は、次のようにします。
var outer = jQuery.parseJSON(theStringWithTheJSON);
var obj = jQuery.parseJSON(outer.Message);
実例| ソース
ajax
しかし、 (たとえば)経由でそれを取得している場合、jQueryはすでに最初parseJSON
のビットを実行している可能性があります。その場合は、2番目のビットを実行する必要があります。
jQuery.ajax({
/* ...other parameters here...*/
success: function(data) {
var obj = jQuery.parseJson(data.Message);
}
});
実例| ソース
ただし、可能であれば、受信する文字列の構造を変更して、次のように二重にエンコードされないようにします。
{
"Message": {
"Errors": [
"The message.",
"The message."
],
"Infos": [
"The message."
],
"Warnings": [
"The message."
],
"Successes": [
"The message."
]
}
}
次に、それを二重にデコードする必要はありません。最初のデコード(これもすでに実行されている可能性があります。コードが表示されていないため、わかりにくいです)が必要であり、を使用できますvar obj = yourVariable.Message;
。
実例| ソース