嵌套计算网格内的文本框的总和 [英] Calculate sum of textboxes inside nested grid

查看:120
本文介绍了嵌套计算网格内的文本框的总和的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 GridView控件两个嵌套网格。这两个嵌套网格都有不同数量的控件(文本框)。我想计算网格嵌套文本框的总和,并把相关的行父电网的相关文本框。

我想这样做,使用jQuery。

以下是网格的源代码:

 <表CELLSPACING =0规则=所有边界=1ID =gvSPActivities的风格=宽度:100%;边境崩溃:崩溃; >
    < TR类=donorh1align =left的风格=高度:35px;>
        百分位范围=山口的风格=宽度:40像素;>#< /第i个百分位范围=山口>活动< /第i个百分位范围=山口>单位和LT ; /第i个百分位范围=山口>目标< /第i个百分位范围=山口>提供有益< /第i个百分位范围=山口>成本< /第i
    &所述; / TR>&下; TR类=gridrow2>
        &所述; TD>
                1
            &所述; / TD>&下; TD>一种与所述; / TD>&下; TD> U1&下; / TD>&下; TD>
                <输入名称=$ gvSPActivities $ ctl02 txtTarget类型=文本VALUE =100ID =gvSPActivities_txtTarget_0级=数字的风格=宽度:150像素; />
            < / TD>< TD>
                <一类=showDetails的href =JavaScript的:switchViews('DIV1','一');>
                展会详情及LT; / A>
                <输入名称=$ gvSPActivities $ ctl02 txtTotalBenefic类型=文本ID =gvSPActivities_txtTotalBenefic_0/>
                < D​​IV CLASS =详细信息ID =DIV1的风格=显示:无;
                左:30像素;>
                < D​​IV>
            <表CELLSPACING =0规则=所有边界=1ID =gvSPActivities_gvBenefic_0的风格=边界崩溃:崩溃;>
                &所述; TR>
                    百分位范围=山口>男< /第i个百分位范围=山口>女< /第i个百分位范围=山口>的子< /第i个百分位范围= 山坳>家庭与LT; /第i
                &所述; / TR>&下; TR>
                    &所述; TD>
                        <输入名称=$ gvSPActivities $ ctl02 $ gvBenefic $ ctl02 txtMaleBenefic类型=文本ID =gvSPActivities_gvBenefic_0_txtMaleBenefic_0级=数字的风格=宽度:100像素; />
                        < / TD>< TD>
                        <输入名称=$ gvSPActivities $ ctl02 $ gvBenefic $ ctl02 txtFemaleBenefic类型=文本ID =gvSPActivities_gvBenefic_0_txtFemaleBenefic_0级=数字的风格=宽度:100像素; />
                        < / TD>< TD>
                        <输入名称=$ gvSPActivities $ ctl02 $ gvBenefic $ ctl02 txtChildren类型=文本ID =gvSPActivities_gvBenefic_0_txtChildren_0级=数字的风格=宽度:100像素; />
                        < / TD>< TD>
                        <输入名称=$ gvSPActivities $ ctl02 $ gvBenefic $ ctl02 txtFamilyBenefic类型=文本ID =gvSPActivities_gvBenefic_0_txtFamilyBenefic_0级=数字的风格=宽度:100像素; />
                        < / TD>
                < / TR>
            < /表>
        < / DIV>
                < / DIV>
            < / TD>< TD>
                <一类=showDetails的href =JavaScript的:switchViews('DIV1','一');>
                展会详情及LT; / A>
                <输入名称=$ gvSPActivities $ ctl02 txtTotalCost类型=文本ID =gvSPActivities_txtTotalCost_0/>
                < D​​IV CLASS =详细信息ID =DIV1的风格=显示:无;
                左:30像素;>
                < D​​IV>
            <表CELLSPACING =0规则=所有边界=1ID =gvSPActivities_gvCost_0的风格=边界崩溃:崩溃;>
                &所述; TR>
                    百分位范围=山口>主营成本与LT; /第i个百分位范围=山口>其他成本与LT; /第i
                &所述; / TR>&下; TR>
                    &所述; TD>
                        <输入名称=$ gvSPActivities $ ctl02 $ gvCost $ ctl02 txtMainCost类型=文本ID =gvSPActivities_gvCost_0_txtMainCost_0级=数字的风格=宽度:100像素; />
                        < / TD>< TD>
                        <输入名称=$ gvSPActivities $ ctl02 $ gvCost $ ctl02 txtOthercost类型=文本ID =gvSPActivities_gvCost_0_txtOthercost_0级=数字的风格=宽度:100像素; />
                        < / TD>
                < / TR>
            < /表>
        < / DIV>
                < / DIV>
            < / TD>
    < / TR>
< /表>

感谢。


解决方案

  VAR总= 0;$(输入[ID ^ ='gvSPActivities'],#gvSPActivities)。每个(函数(){
    总=总+ THIS.VALUE;
});$(someInputElement).VAL(总);

I have two nested grids in a GridView. Both nested grids have different number of controls (TextBoxes). I want to calculate sum of nested grid textboxes and put in a relevant textbox of relevant row parent grid.

I want to do this using jQuery.

Following is the source of grids:

<table cellspacing="0" rules="all" border="1" id="gvSPActivities" style="width:100%;border-collapse:collapse;">
    <tr class="donorh1" align="left" style="height:35px;">
        <th scope="col" style="width:40px;">#</th><th scope="col">Activity</th><th scope="col">Unit</th><th scope="col">Target</th><th scope="col">Benefic</th><th scope="col">Cost</th>
    </tr><tr class="gridrow2">
        <td>
                1
            </td><td>a</td><td>u1</td><td>
                <input name="gvSPActivities$ctl02$txtTarget" type="text" value="100" id="gvSPActivities_txtTarget_0" class="numeric" style="width:150px;" />
            </td><td>
                <a class="showDetails" href="javascript:switchViews('div1', 'one');">
                Show Details</a>
                <input name="gvSPActivities$ctl02$txtTotalBenefic" type="text" id="gvSPActivities_txtTotalBenefic_0" />
                <div class="details" id="div1" style="display: none;
                left: 30px;">
                <div>
            <table cellspacing="0" rules="all" border="1" id="gvSPActivities_gvBenefic_0" style="border-collapse:collapse;">
                <tr>
                    <th scope="col">Male</th><th scope="col">Female</th><th scope="col">Children</th><th scope="col">Family</th>
                </tr><tr>
                    <td>
                        <input name="gvSPActivities$ctl02$gvBenefic$ctl02$txtMaleBenefic" type="text" id="gvSPActivities_gvBenefic_0_txtMaleBenefic_0" class="numeric" style="width:100px;" />
                        </td><td>
                        <input name="gvSPActivities$ctl02$gvBenefic$ctl02$txtFemaleBenefic" type="text" id="gvSPActivities_gvBenefic_0_txtFemaleBenefic_0" class="numeric" style="width:100px;" />
                        </td><td>
                        <input name="gvSPActivities$ctl02$gvBenefic$ctl02$txtChildren" type="text" id="gvSPActivities_gvBenefic_0_txtChildren_0" class="numeric" style="width:100px;" />
                        </td><td>
                        <input name="gvSPActivities$ctl02$gvBenefic$ctl02$txtFamilyBenefic" type="text" id="gvSPActivities_gvBenefic_0_txtFamilyBenefic_0" class="numeric" style="width:100px;" />
                        </td>
                </tr>
            </table>
        </div>
                </div>
            </td><td>
                <a class="showDetails" href="javascript:switchViews('div1', 'one');">
                Show Details</a>
                <input name="gvSPActivities$ctl02$txtTotalCost" type="text" id="gvSPActivities_txtTotalCost_0" />
                <div class="details" id="div1" style="display: none;
                left: 30px;">
                <div>
            <table cellspacing="0" rules="all" border="1" id="gvSPActivities_gvCost_0" style="border-collapse:collapse;">
                <tr>
                    <th scope="col">Main Cost</th><th scope="col">Other Cost</th>
                </tr><tr>
                    <td>
                        <input name="gvSPActivities$ctl02$gvCost$ctl02$txtMainCost" type="text" id="gvSPActivities_gvCost_0_txtMainCost_0" class="numeric" style="width:100px;" />
                        </td><td>
                        <input name="gvSPActivities$ctl02$gvCost$ctl02$txtOthercost" type="text" id="gvSPActivities_gvCost_0_txtOthercost_0" class="numeric" style="width:100px;" />
                        </td>
                </tr>
            </table>
        </div>
                </div>
            </td>
    </tr>
</table>

Thanks.

解决方案

var total = 0;

$("input[id^='gvSPActivities']", "#gvSPActivities").each(function() {
    total = total+this.value;
});

$(someInputElement).val(total);

这篇关于嵌套计算网格内的文本框的总和的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆