2012-08-13 147 views
0

以下代碼我只能在第一個得到價值?我想獲得的所有TD標籤 的值在運行時如何獲得值​​

//************************************* 

@foreach (var item in Model) 
{ 
    <script src="../../Scripts/jquery-1.4.4.js" type="text/javascript"></script> 

<script type="text/javascript"> 
    $(document).ready(function() 
    { 
     $("input:checkbox").click(function() 
     { 

     if ($('input:checkbox').attr('checked')) 
      { 
       $(".wagein").each(function() 
       { 
        calculateSum(); 
       }); 
      } 
      }); 
     }) 
      function calculateSum() 
        { 

      var sum = 0; 
         if (!isNaN(this.value) && this.value.length != 0) 
         { 
         sum += parseInt(this.value); 
         $("#WageSum").val(sum); 
         alert(sum); 
         } 

        else 
         { 
          sum -= parseInt(this.value); 
          $("#WageSum").val(sum); 
          alert(sum); 
         } 

       }; 

總結工資列的值,這是我<td>標籤將包含許多值從模型

<td class="wagein" > 
    @Html.DisplayFor(modelItem => item.Wage) 
</td> 

回答

0

我建議得到價值服務器端,我已經離開了大部分的錶行詳細的向您展示的概念:

@{ 
decimal total = 0; 
foreach (var item in Model) 
{ 
... 
<td class="wagein" > 
    @Html.DisplayFor(modelItem => item.Wage) 
    total += item.Wage; 
</td> 
... 
} 

如果仍然決心要得到總的客戶端你可能不想在你的循環中添加JavaScript。

0

你可以做到服務器端,並使用LINQ擴展model.Sum(x => x.Wage)插入一行。或者你可以做客戶端。以Fiddle爲例。