在我的MVC3应用程序中,我有一个Json编码的视图模型,所以我可以在JavaScript中操作它。
所以我想说我有以下代码:
var model=@Html.Raw(Json.Encode(Model));
目前,model.Name的值为“Name”。
我现在要做的是创建另一个JavaScript对象“obj”,它有一个名为“Value”的字段。当你改变obj.Value时,它也改变了model.Name。
所以我想要这样的东西:
var obj=new Object();
obj.Value=model.Name;
现在,如果我更改obj.Value的值,它也不会更改model.Name。我希望这种情况发生,我不确定如何在JavaScript中完成它。我该如何实现呢?
答案 0 :(得分:0)
为什么不将名称放在隐藏的输入字段中。使用您通常的方式选择的任何JavaScript更改值。然后,当回发表单时,您可以绑定到控制器操作中的名称值,并将模型名称设置为服务器端。
你正在尝试的是不必要的复杂。
如果你真的想让它工作 - 那么在提交时将整个JSON字符串放在一个隐藏的输入字段中。然后再次在控制器操作中将JSON绑定为字符串,并在服务器端反序列化以重建模型。