簡體   English   中英

如何使用 JavaScript 通過 SPAN 在 GridView 中獲得 CheckBox 控件

[英]How to get CheckBox control in GridView with SPAN using JavaScript

我正在嘗試從 gridview 為選中的行復選框計算總數量,但無法在我的 javascript 中獲得復選框控件。 如何從 Javascript 中生成的 Gridview 表行下方獲取復選框控件? 我在下面附上了我的腳本,腳本上沒有任何內容。

    <table cellspacing="0" cellpadding="1" rules="all" border="1" id="grdView" style="background-color:#F2F4FF;width:100%;border-collapse:collapse;">
         <tr>
            <td align="center">
                            <span class="chkSelected" style="display:inline-block;border-style:None;"><input id="grdView_ctl02_chkSelect" type="checkbox" name="grdView$ctl02$chkSelect" /></span>
                            <input type="hidden" name="grdView$ctl02$hdDocId" id="grdView_ctl02_hdDocId" value="DO0002" />
                            <input type="hidden" name="grdView$ctl02$hdScope" id="grdView_ctl02_hdScope" value="Dlv" />
                            <input type="hidden" name="grdView$ctl02$hdDocType" id="grdView_ctl02_hdDocType" value="DO" />
                            <input type="hidden" name="grdView$ctl02$hdRefNo" id="grdView_ctl02_hdRefNo" />
                            <input type="hidden" name="grdView$ctl02$hdServiceType" id="grdView_ctl02_hdServiceType" />
                            <input type="hidden" name="grdView$ctl02$hdQty" id="grdView_ctl02_hdQty" />
                            <input type="hidden" name="grdView$ctl02$hdWeight" id="grdView_ctl02_hdWeight" />
                        </td>
        </tr>
    </table>

 function calculateTotal() { var sum = 0.00; var itemsum = 0.00; var gv = document.getElementById('grdView'); for (var row = 1; row < gv.rows.length; row++) { var cb = gv.rows[row].cell[0].childNodes[0].find('input[type="checkbox"]'); if (cb.checked) { var quantity = gv.rows[row].cells[8].innerText; try { sum += new Number(quantity); } catch (err) { alert(quantity); } } } alert(sum.toString()); return false; }

我浪費了幾天時間來獲得正確的 output ,如下所示。 希望這對那些 javascript 初學者開發人員(比如我:))有所幫助並節省時間。 快樂編碼。

function calculateTotal()
{
    var sum = 0.00;     
    var gv = document.getElementById('grdView'); 
    for (var row = 1; row < gv.rows.length; row++) {
        const collection = gv.rows[row].cells[0].children;
        var cb = collection[0].firstChild;           
        if (cb.checked) {
            var quantity = gv.rows[row].cells[8].innerText;
            try {
                sum += new Number(quantity);
            } catch (err) {
                //how to alert(quantity);
            }
        }
    } 
    var lbltotal= document.getElementById('lblTotalQty');
    lbltotal.innerHTML = sum.toString(); 
    return false;       
}  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM