使用javascript或jquery获取转发器中span的文本值

时间:2013-10-02 19:10:02

标签: javascript jquery html css text

我无法获得跨度(或标签)的价值 这是我的HTML代码

<asp:Repeater ID="rpt_district" runat="server" >
            <ItemTemplate>
            <tbody id='bodies'>

                <tr>
                <td>
                    <span id="district_id"><%# Eval("DISTRICT_ID") %></span>
                </td>
                <td><%# Eval("DISTRICT_NAME") %></td>
                <td>
                    <asp:Label ID="lb_city_id" runat="server" Text='<%# Eval("CITY_ID") %>'></asp:Label>
                </td>
                <td style="float:left; margin-left:5px;">
                    <asp:CheckBox ID="cb_status" runat="server" onclick="javascript: return false;" />
                    <asp:HiddenField ID="hf_status" Value='<%# Eval("ENABLE") %>' runat="server" />
                </td>
                <td>
                    <div style="float:left; margin-left:4px;" >
                        <asp:ImageButton ID="ib_edit" runat="server" ImageUrl="~/Hinh/icons/Edit.png" ToolTip="Edit" />
                    </div>
                    <div style="float:left; margin-left:4px;">
                        <asp:ImageButton ID="ib_delete" runat="server" ImageUrl="~/Hinh/icons/Trash.png" 
                                        ToolTip="Delete" CommandArgument='<%# Eval("DISTRICT_ID") %>'
                                        OnClientClick="getvalue(); return false;"/>

                    </div>
                </td>
                </tr>


            </tbody>
            </ItemTemplate>
            </asp:Repeater>

我希望在点击图片按钮时使用javascript获取span标签中的district_id值(或标签可以)

function getvalue() {
    var thisspan = $('.district_id').eq(0);
    alert(thisspan);
}

但它只是得到第一列中的值是ea(0)的原因 我只是想通过使用javascript或jquery而不是代码来获得价值 感谢.....

4 个答案:

答案 0 :(得分:3)

在HTML中,没有两个元素可以具有相同的ID。您的转发器正在创建具有相同ID的多个元素。在JavaScript中,您选择的是使用jQuery而不是ID的类。将其更改为html中的一个类。

答案 1 :(得分:0)

您正在课后搜索,但您有一个ID

var thisspan = $('#district_id')。eq(0);

答案 2 :(得分:0)

。是类的选择器,#是ids的选择器。你的html的id不是类,所以你的代码应该是:

var thisspan = $('#district_id').eq(0);

此外,id在html中是唯一的,所以你不需要.eq(0):

var thisspan = $('#district_id');

最后,要获取跨度的文本值,您需要执行以下操作:

var thisspan = $('#district_id').html();

var thisspan = $('#district_id').text();

答案 3 :(得分:0)

像这样在图像按钮中添加一个css类。 DOM中没有两个元素应该具有相同的ID。

<asp:ImageButton ID="ib_delete" CssClass="imgClass" ..../>

下面将为您提供图像按钮的第一个实例的值。

console.log($('.imgClass').val());