2012-08-03 76 views
3

我想在asp.net mvc3視圖中調用c#代碼中的JavaScript函數,但不知道如何執行此操作。我的代碼如下如何在mvc3視圖中的foreach中調用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. 
} 
+0

你最好使用jQuery,爲你的DOM元素指定一個CSS類並使用jQuery.each。 – lahsrah 2012-08-03 05:16:46

回答

11

那麼你可以使用這樣的事情:

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> 
+0

好弗拉季拉夫Qulin第二種方式我已經使用工作正常 – 2014-05-14 07:08:16

1

只有在意見不能調用服務器端JS功能。它會看起來像

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

輸出html將包含這個js函數的幾個調用。

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(); 
    } 
}); 
-1

要調用javascript函數

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

現在用於Javascript功能

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