使用jquery函数返回列总计

时间:2013-09-15 01:36:41

标签: jquery html asp.net

在以下代码中,我显示的是studentNamefeeAmount列。然后,最后,我试图添加feeAmount的数量,但jQuery函数没有返回总量。

<div id="studentContent"  >
    <script id="studentTemplate" type="text/x-jquery-tmpl"> 
        <form id="studentForm" action ="">
            <table  class=""  border="1" cellpadding="0" cellspacing="0">
                <tbody>
                    {{#each items}}
                        <tr class="">
                            <td>{{=studentName}}</td>
                            <td><input type="text" class="{{=id}}" id="{{=id}}"
                   value='{{=feeAmount}}' /></td>
                        </tr>
                    {{/each}} 
                    <tr>
                        <td><input id="totalFeeAmount" value="a" /></td>
                    </tr>
                    <tr>
                </tbody>           
            </table>            
        </form>
    </script>
</div>

$(document).ready(function () {
    $("#studentForm").html(function () {
        var totalFeeAmount = 0;
        $(".feeAmount").each(function () {
            totalFeeAmount += parseInt($(this).html())
        });
        return totalFeeAmount;
    });
});

请让我知道如何修复返回的功能并显示列的总数。

1 个答案:

答案 0 :(得分:1)

您需要设置totalFeeAmount输入字段的值,而不是更改完整的表单内容

$(document).ready(function () {
    $("#totalFeeAmount").val(function () {
        var totalFeeAmount = 0;
        $(".feeAmount").each(function () {
            totalFeeAmount += (parseInt($(this).html()) || 0)
        });
        return totalFeeAmount;
    });
});

$(document).ready(function () {
    var totalFeeAmount = 0;
    $(".feeAmount").each(function () {
        totalFeeAmount += (parseInt($(this).html()) || 0)
    });
    $("#totalFeeAmount").val(totalFeeAmount);
});