4

我在 GridViewRow 单元格中有一个 Label 控件,我需要使用 Javascript 从客户端访问它。我可以很好地访问 GridView 行,但我一生都无法弄清楚如何访问其中的标签。

布局:

<asp:TemplateField>
    <ItemTemplate>
        <asp:Label ID="link_lbl" runat="server" Visible="false" Text='<%# BIND("link") %>'></asp:Label>
    </ItemTemplate>
</asp:TemplateField>

Javascript:

var gridview = document.getElementById("<%= list_gv.ClientID %>");
for (i = 1; i < gridview.rows.length; i++) {
    var label = gridview.rows[i].cells[0].?????
}

我已经尝试了各种方法?????,但无法访问 Label 控件来读取它!

请问有什么想法吗?

4

2 回答 2

3

Try this code

var gridview = document.getElementById("<%= list_gv.ClientID %>");
for (i = 1; i < gridview.rows.length; i++) {
    var labels = gridview.rows[i].cells[0].getElementsByTagName("span");
     alert(labels[0].innerHTML);
}

This will give you the first label text in cell[0]. You can also directly get by using label id.

var gridview = document.getElementById("<%= list_gv.ClientID %>");
for (i = 1; i < gridview.rows.length; i++) {
    var RowNumber=(i+1).toString();
    if (i<10)
    RowNumber="0"+(i+1).toString();
    var label =  document.getElementById(gridview.id.toString()+"_ctl" + RowNumber + "_link_lbl");
    alert(label.innerHTML);
}
于 2013-02-08T15:59:47.780 回答
1

尝试这个

var label =gridview.rows[i].cells[0].getElementsByTagName("span")
于 2013-02-08T15:42:36.120 回答