我对应该如何在 MVC 中使用 JSON 对象以及它们应该如何从 Controller 传递到 View 再到 Jscript 感到困惑。
我也不确定我是否在正确的点正确解析 JSON 对象......
我的控制器返回一个带有json对象的PartialView (“变量”是一个数据列表,例如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);
}
然后,我的视图通过创建此变量使这些数据可用于我的脚本:
@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”时)。
非常感谢任何帮助,谢谢。