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

时间:2012-08-03 05:14:52

标签: c# javascript asp.net-mvc asp.net-mvc-3

我想在asp.net mvc3视图中调用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.  
}

4 个答案:

答案 0 :(得分:12)

你可以使用这样的东西:

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

如果你需要在javascript代码中使用foreach,你应该使用。像这样:

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

答案 1 :(得分:3)

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

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

然后有/没有第三方JavaScript库的帮助

$(document).ready(function () {
    $('.item').each(function () {
        JK();
    }
});

答案 2 :(得分:1)

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

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

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

答案 3 :(得分:-1)

调用javascript函数

   //C# Code
@Html.Raw("CallFunction('" + @param + "');");
    //C# code..

现在用于Javascript功能

<script type="text/javascript">
     CallFunction(param)
     {
       alert(param);
     }
  </script>