将控制器中的字符串作为javascript函数参数传递给局部视图

时间:2011-08-01 01:45:41

标签: javascript asp.net-mvc razor

我有一个控制器

public ActionResult controller(){
Viewclass view = new Viewclass();
... 
return PartialView("Tab", view);
}

在视图类中,字符串A和B是我编译的JSON字符串。

public class ViewClass
{public string A {get;set;}
public string B {get;set;}
}

在“部分”视图中,我想要

<script type="text/javascript">
RunMap( @Model.A, @Model.B);
</script>

问题是“被解析为&amp;”,如{&amp; quotCity&amp; quot:}进入函数。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

使用@Html.Raw将字符串视为原始HTML(例如MVC不会对其进行编码)

<script type="text/javascript">
   RunMap(@Html.Raw(Model.A), @Html.Raw(Model.B));
</script>

当然,您需要确保仔细处理输入(例如数据)。

答案 1 :(得分:1)

工作:RunMap( "@Model.A", "@Model.B");

如果要将它们作为JSON对象传递,请取出引号。