2011-10-23 10 views
0

私はUIレイヤにerrorIdとエラーメッセージを渡すために使用したListエラーエンティティを持っています。Parse Jsonオブジェクト

public class ErrorEntity 
    { 
     public int ErrorId 
     { 
      get; 
      set; 
     } 

     public string ErrorMessage 
     { 
      get; 
      set; 
     } 
    } 
} 

オブジェクトをJavascriptに送信します。JSONにシリアル化しています。

私は

[{"ErrorId":1,"ErrorMessage":"Test has not been prepared for tag EP105"},{"ErrorId":2,"ErrorMessage":"Test has not been prepared for tag EP105"}] 

などのシリアライズを見た後、取得していますJSONは今、私は、ユーザーにエラーメッセージを表示するには、このJSON文字列を解析する必要があります。私はそれをどのように解析できるのか教えてください。私はそれの中で横断するためにforループを書く必要がありますか?

EDIT私のマスターページで私はそれを解析しようとしています。

var jsonArray = JSON.parse(serializedString); 
window.alert(jsonArray[0].ErrorMessage); 

フォールバックeval()にそうでない場合:

function ShowErrorMsg(jsonObject) { 
    for (i = 0; i < jsonObject.Object.length; i++) { //Object is undefined here. 
    alert(jsonObject.Object.ErrorMessage); 
    }   
} 
+1

); - (JSが悪魔からである)、このためにJSを使用していない - そのライブラリを使用することをお勧め - あなたはまた、注意してくださいthis

を見てみることができます?一部のブラウザにはjson文字列を解析する機能があります。あなたのターゲットブラウザはどれですか( – deostroll

答えて

2

JSON.parse()を優先してみ

var jsonArray = eval(serializedString); 
window.alert(jsonArray[0].ErrorMessage); 
+0

これを行うより好ましい方法は何ですか? evalは安全でしょうか? –

+0

JSONで使用されるJavaScriptのサブセットのみを解析し、 'eval()'よりも安全な 'JSON.parse()'を使用するのが好ましい方法です。 –

+0

ブラウザがJSON.parse()をサポートしていない場合は、フォールバックを実装する必要があるjQueryのようなライブラリを使用する必要があります。 – Jamie

0

それが利用可能かどうJson.NET

+0

)スクリプトファイルで解析しようとしています。 –

+0

plzもっと多くの情報を... ... javacript経由での意味... – deostroll

0

JSONを解析するためのほとんどのブラウザでサポートがあり、IこれにはjQueryを使用することをおすすめしますあなたはjQueryのような任意のAJAXベースのライブラリを使用している