如何将模型对象传递给javascript函数

时间:2016-03-17 21:58:32

标签: javascript asp.net-mvc razor

在我的剃刀视图(cshtml)中,我想将我的模型对象作为一个整体传递给javascript函数并让javascript函数对它执行一些操作,但是我在尝试传递模型时遇到了问题。这就是我所拥有的:

@model TestModel

<body>
...
...
<a onclick="DoSomething(@Model)">TestClickLink</a>
...
...
</body>

<script>

    function DoSomething(theModel) {
        theModel.variable1 = something
    }

</script>

如何将当前模型的所有值传递给javascript函数?我不是非常精通javascript,所以请详细说明您的解释,如果可以的话,任何帮助都会很感激

1 个答案:

答案 0 :(得分:0)

我会尝试在Json中序列化你的模型。请确保您的模型是POCO,没有循环引用。如果是这样,请将Json.Net添加到您的项目中,如果您还没有,并生成脚本标记:

<head ...>
    <script>
      var theModel = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model));
    </script>
</head>