将c#变量传递给javascript函数

时间:2010-11-11 10:17:27

标签: c# javascript asp.net-mvc

我正在尝试将c#变量作为参数传递给像

这样的java脚本函数
<%var count=model.SomeMode.Count();%>

当我将它传递给我的java脚本函数“checkAll(count)”时,它不会触发,但没有参数,其工作正常

<a  href="#" onclick="return checkAll(count);">CheckAll</a>

4 个答案:

答案 0 :(得分:6)

请记住,无论您希望如何创建页面。所以,你可以这样做:

<script type="text/javascript">
  var count = <%=model.SomeMode.Count(); %>;
</script>

您可以在方法调用中应用相同的逻辑,因此您可以执行以下操作:

<a  href="#" onclick="return checkAll(<%=model.SomeMode.Count(); %>);">CheckAll</a>

答案 1 :(得分:2)

Javascript无法直接看到您的C#源代码 - 您需要将其写入服务器端的Javascript源代码:

<a  href="#" onclick="return checkAll(<%= count %>);">CheckAll</a>

答案 2 :(得分:1)

它应该是这样的:

<script type="text/javascript">
  var count=<%=model.SomeMode.Count()%>;
</script>

目前,您在C#中声明了您的变量,而不是在JavaScript中将其作为JavaScript输出。相反,您希望在页面中逐字声明var count并将其设置为model.SomeMode.Count()的输出。

答案 3 :(得分:0)

这可能对您的解决方案有利:

<a  href="#" onclick='return checkAll(<%=count%);'>CheckAll</a>

但是还有另一种方法可以做到这一点,而不是传统方式:

Sharing Variables Between JavaScript and C#

Fredrik Kalseth