【发布时间】:2014-12-03 10:22:37
【问题描述】:
我有一个 JSON 字符串,当使用 @Model.JsonData 在 ASP.NET MVC 页面中显示时看起来像这样
[
{
"id": 123,
"text": "Consumer",
"parent": "#";
}
]
当我在 JavaScript 代码中使用相同的 @Model.JsonData 时,它被编码为:
[
{
"id": 123,
"text": "Consumer",
"parent": "#"
}
]
为什么 JavaScript 段编码双引号?
当双引号被编码时,期望 JSON 数据的 jstree 插件不起作用。
<script>
$(function () {
$('#jstree').jstree({
'core': {
'data': function ()
{
var jsonTreeData = @Model.JsonTreeData;
return jsonTreeData;
}
}
});
});
</script>
错误信息: "SCRIPT1015: 未终止的字符串常量"
【问题讨论】:
-
var json = JSON.parse('@Model.JsonData') -
上述注释不起作用,因为@Model.JsonTreeData 自动编码并抛出“SCRIPT1015:未终止的字符串常量”
标签: javascript asp.net-mvc json encoding jstree