如何使用Javascript获取asp:表格单元格值?

时间:2014-07-19 15:38:29

标签: javascript c# asp.net

在我的aspx文件中,我定义了一个 asp:table ,如下所示。我想使用Javascript获取其单元格内容。我怎么能这样做?

Test.aspx文件

<asp:Table ID="tableID" runat="server">
<asp:TableRow>
    <asp:TableCell>
        <asp:Label runat="server"></asp:Label>
    </asp:TableCell>
    <asp:TableCell>
        <asp:TextBox runat="server"></asp:TextBox>
    </asp:TableCell>
</asp:TableRow>

<asp:TableRow>
    <asp:TableCell>
        <asp:Label runat="server"></asp:Label>
    </asp:TableCell>
    <asp:TableCell>
        <asp:TextBox runat="server"></asp:TextBox>
    </asp:TableCell>
</asp:TableRow>
</asp:Table>

test.aspx中的Javascript部分

<script type="text/javascript">
function GetCellContents() {
var table = document.getElementById('<%=tableID.ClientID %>');

//HERE I WANT TO GET CELL CONTENTS AS ARRAY OF STRING
}
</script>

2 个答案:

答案 0 :(得分:0)

向您的单元格添加cssclass,然后您可以使用getElementsByClassName Javascript函数来获取元素。

答案 1 :(得分:0)

我是这样做的:

var table = document.getElementById('<%=tableID.ClientID %>');
for (var i = 0; i < table.rows.length; i++) {
    //get first column (labels)
    var lblCtrl = table.rows[i].cells[0].childNodes[0];
    //get second column (textBoxes)
    var txtCtrl = table.rows[i].cells[1].childNodes[0];
    //check that the second column is a textBox
    if (txtCtrl.tagName == "INPUT" || txtCtrl.tagName == "SELECT") {
        alert(txtCtrl.value);
    }
    if (!(lblCtrl.tagName == "INPUT" || lblCtrl.tagName == "SELECT"))
    {
        alert(lblCtrl.innerHTML);
    }
}
相关问题