0

我的网格中有多个行数小时。我有一个相同的通用标签lblFromTime
我需要从 javascript 中获取每一行中绑定的标签文本。
有人可以给我一个解决方案吗?

我尝试了以下代码,但它没有返回文本。

var gvRowCount = ('<%= gvTimeSlots.Rows.Count%>');
for (i = 0; i <= gvRowCount; i++) 
{
    var fromTime = document.getElementById('ContentHead_MainContent_gvTimeSlots_lblFromTime_i');
    alert(fromTime.value);
}
4

1 回答 1

0

I tried out a sample like this

ASPX Code

<asp:GridView ID="gv" runat="server" AutoGenerateColumns="false">
    <Columns>
        <asp:TemplateField HeaderText="check">
            <ItemTemplate>
                <asp:Label ID="lbl" runat="server" Text='<%#Eval("iso") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
   </Columns>

the Gridview generated the following HTML -

<table cellspacing="0" rules="all" border="1" id="gv" style="border-collapse:collapse;">
    <tr>
        <th scope="col">check</th>
    </tr>
    <tr>
        <td>
            <span id="gv_ctl02_lbl">ab</span>
        </td>
    </tr>
    <tr>
        <td>
            <span id="gv_ctl03_lbl">ab</span>
        </td>
    </tr>
    <tr>
        <td>
            <span id="gv_ctl04_lbl">ab</span>
        </td>
    </tr>
</table>

as you can see for my case the span id started from 2.

so i tried the following javascript

for(i=2;i<5;i++) console.log(document.getElementById('gv_ctl0'+i+'_lbl').innerHTML);

and the result was

ab
ab
ab

I tried it out in chrome and firefox(firebug). both are working fine.

于 2013-04-08T09:46:41.007 回答