在我的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>
答案 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);
}
}