我有我的 JS 函数:
function LoadJs(hostApp) {
$.ajax({
type: "POST",
url: '@Url.Action("LoadJs", "Home")',
data: { "hostApp": hostApp },
success: function (Js) {
Response.Write(Js)
}
});
}
当我在我的 Summary.vbhtml
文件中调用该函数时,我想将它传递给我的 hostApp 对象,然后让 Javascript 将该对象传递给 Controller 操作。
这是调用 LoadJs
函数的我的 script
标签:
<script type="text/javascript">
LoadJs( @(model));
</script>
我已经尝试过 '@model'
、'@(model)'
和 @model
,但似乎都无法正确传递.当我通过前两种方式传递它时,它传递了一个字符串,这不是我想要的,如果我尝试最后一种方式或示例中的方式,它会将 @model
转换为正确的对象,但它说它是未定义的。
最佳答案
你可以使用
<script type="text/javascript">
LoadJs(@(Html.Raw(new JavaScriptSerializer().Serialize(model))));
</script>
关于javascript - 将 razor 对象传递给 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11903695/