C# 如何在mvc3视图中调用foreach中的javascript函数

C# 如何在mvc3视图中调用foreach中的javascript函数,c#,javascript,asp.net-mvc,asp.net-mvc-3,C#,Javascript,Asp.net Mvc,Asp.net Mvc 3,我想在asp.NETMVC3视图中的c#代码中调用JavaScript函数,但不知道如何实现。我的代码如下 Javascript函数 function JK(){ alert("Javascript Function Called From foreach"); } C#Foreach foreach(var item in collection){ //I want to call JavaScript function here on every iterate. }

我想在asp.NETMVC3视图中的c#代码中调用JavaScript函数,但不知道如何实现。我的代码如下

Javascript函数

function JK(){

   alert("Javascript Function Called From foreach");

  }
C#Foreach

foreach(var item in collection){ //I want to call JavaScript function here on every iterate.  
}

您不能仅在视图中调用服务器端的JS函数。看起来就像

@foreach(var item in collection)
{
  ...
  <script type="text/javascript">
     JK()
  </script>
  ...
}
@foreach(集合中的变量项)
{
...
JK()
...
}

输出html将包含此js函数的多个调用。

您可以使用以下内容:

foreach (var item in collection) {
   <script type="text/javascript">
     JK();
   </script>
}
foreach(集合中的变量项){
JK();
}
如果需要在javascript代码中使用foreach,只需使用。像这样:

<script type="text/javascript">
   @foreach (var item in collection) {
      <text>JK();</text>
   }
</script>

@foreach(集合中的var项){
JK();
}

我将以稍微不同的方式实现它

@foreach(var item in collection)
{
    <!-- some html element that will be generated on each loop cycle
    <input type="hidden" class="item"/>
}

调用javascript函数的步骤

   //C# Code
@Html.Raw("CallFunction('" + @param + "');");
    //C# code..
<script type="text/javascript">
     CallFunction(param)
     {
       alert(param);
     }
  </script>
现在是Javascript函数

   //C# Code
@Html.Raw("CallFunction('" + @param + "');");
    //C# code..
<script type="text/javascript">
     CallFunction(param)
     {
       alert(param);
     }
  </script>

调用函数(参数)
{
警报(参数);
}

最好使用jQuery,用CSS类分配DOM元素,并使用jQuery.each。