如何获得价值

时间:2012-08-13 09:04:46

标签: jquery asp.net-mvc razor

以下代码我可以先获得价值吗?我希望获得所有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>

2 个答案:

答案 0 :(得分:0)

我建议获取值服务器端,我遗漏了大部分表行详细信息以向您展示这个概念:

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

如果您仍然决定获得整个客户端,您可能不希望在循环中添加JavaScript。

答案 1 :(得分:0)

您可以在服务器端执行并使用LINQ扩展模型插入行.Sum(x =&gt; x.Wage)。或者你可以做客户端。请查看此Fiddle以获取示例。