MVC 内で JSON オブジェクトをどのように使用する必要があるか、およびコントローラーからビュー、Jscript に渡す方法について混乱しています。
また、適切なポイントで JSON オブジェクトを正しく解析しているかどうかもわかりません...
私のコントローラーは、jsonオブジェクトを含む PartialViewを返しています (" Variables " は、 Id=2012、Name=BillyJoel、Value="£2,000"などのデータのリストです):
public ActionResult JavascriptConstants() {
var variables = Service.Obtain<VariableService>().All().ToList();
var json = new JavaScriptSerializer().Serialize(variables);
return PartialView("JavascriptConstants", json);
}
My Viewは、この変数を作成することで、このデータをスクリプトで使用できるようにします。
@model string
...
var mvcListOfVariablesInDB = '@Html.Raw(Json.Encode(Model))';
次に、私のJscript ファイルはデータにアクセスし、情報とキーと値のペアを取り出そうとしますが、JSON を文字列として解釈しているようです。
var variableList = $.parseJSON(mvcListOfVariablesInDB);
for (var variable in variableList) {
alert(variableList[variable]);
}
これは、文字列の各文字が表示されると"
、[
、 、 などのアラートを返すだけです。{
JSON オブジェクトのキー値にアクセスするにはどうすればよいですか?
私は自分のJSを使用するように変更しようとしました:
var variableList = $.parseJSON(mvcListOfVariablesInDB);
しかし、これUncaught SyntaxError: Unexpected token I
はブラウザにエラーを表示するだけです(「Id」の「I」にヒットすると仮定しています)。
どんな助けでも大歓迎です、ありがとう。