在MVC3页面加载我有一个模型中的字符串应该是JSONObj.
private string CreateJSONObj(Model model)
{ return "{ name: 'test', Items: [{ test: 1 }, { test: 2 }]"; }
Model.jsonModel = CreateJSONObj(model);
Run Code Online (Sandbox Code Playgroud)
现在我想在我的页面中实现它:
<script>var jsModel = eval('@Model.jsonModel');
var jsonModel = $.toJSON(jsModel);
$.ajax({
url: 'Page/SetJSON/',
type: "POST",
data: jsonModel,
datatype: "json",
contentType: "application/json; charset=utf-8",
success: function () {
$('#test').html('Saved').fadeIn(),
},
error: function () {
$("#test").html("error"),
}
});</script>
Run Code Online (Sandbox Code Playgroud)
但Controller获取一个null对象.如果我将jsonstring写入脚本everthing是好的.
我应该使用eval吗?但是var jsModel = eval('@ Model.jsonModel'); 没有效果.怎么了?:-)