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

4 回答 4

13

那么你可以使用这样的东西:

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>
于 2012-08-03T05:20:56.550 回答
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();
    }
});
于 2012-08-03T05:21:34.160 回答
1

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

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

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

于 2012-08-03T05:16:59.203 回答
-2

调用 javascript 函数

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

现在用于 Javascript 函数

<script type="text/javascript">
     CallFunction(param)
     {
       alert(param);
     }
  </script>
于 2013-06-17T10:51:33.370 回答