我用剃须刀在asp.net mvc 3中。该模型的类型为IList<PipeLineView>
。 PipeLineView
的定义是
public class PipeLineView
{
public string Stage { get; set; }
public decimal Amount { get; set; }
public string Color { get; set; }
public int Count { get; set; }
public int LevelNo { get; set; }
}
在视图中我正在做类似
的事情JavaScriptSerializer serializer = new JavaScriptSerializer();
var data = serializer.Serialize(Model);
并在我有的JavaScript中
<script type="text/javascript">
var data =JSON.parse(@Html.Raw(data));
</script>
当我在firefox中加载页面时,我收到以下js错误
SyntaxError: JSON.parse: unexpected character
[Break On This Error]
...":5,"LevelNo":1},{"Stage":"Level2","Amount":0.000,"Color":"Red","Count":0,"Level...
这可能是什么问题? 感谢
答案 0 :(得分:2)
JSON.parse需要一个JSON字符串,因此您需要对该参数进行字符串引用,以便在''
周围添加@Html.Raw(data)
:
<script type="text/javascript">
var data = JSON.parse('@Html.Raw(data)');
</script>
但在你的情况下你不需要解析你可以写:
<script type="text/javascript">
var data = @Html.Raw(data);
</script>