使用JQuery或JavaScript访问Gridview中的Eval值

时间:2011-10-12 11:22:58

标签: javascript jquery asp.net

gridview有四个columns。内部的所有数据都是使用RowDataBoundLiterals事件中生成的 例如。

      <asp:TemplateField HeaderText="" >
            <ItemTemplate>
                 <asp:HiddenField ID="ID"  Value='<%#Eval("id")%>' runat="server" />  

                <asp:Literal ID="ltrImage" runat="server"></asp:Literal>

            </ItemTemplate>
        </asp:TemplateField>  

       and

      <asp:TemplateField HeaderText="" HeaderStyle-HorizontalAlign="Center"
            ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center">
            <ItemTemplate>
                <asp:Literal ID="lrtBrief" runat="server"></asp:Literal>      
            </ItemTemplate>
        </asp:TemplateField>    

其中一个Literals我正在创建一个<a>代码,并希望在<%#Eval("id")%>代码的click事件中找到<a>值。

我确实尝试了类似的东西,但没有工作

$('.contactLink').click(function () {

    var grd = $('#MainContent_cphMain_DisplayResults1_gvDisplay');
    var txt = $(grd).find("cells[1].innerHTML").html();

});

HTML看起来像这样

<td align="center" style="width:5%;">
<input id="MainContent_cphMain_DisplaySearchResults1_gvListing_Listing_0" type="hidden" value="1" name="ctl00$ctl00$MainContent$cphMain$DisplaySearchResults1$gvListing$ctl02$Listing">
  <table class="contact">
  <tbody>
    <tr>
      <td valign="top">
      <h3>Test</h3>
      <h3>
      <a id="hlContact" class="contactLink format"  runat="server">Contact</a>
      <a id="hlViewF" class="viewLink format" href="CategoriesSearch.aspx?ID=1" runat="server">View </a>
      </td>
    </tr>
  </tbody>
  </table>
</td>

任何帮助将不胜感激

由于

2 个答案:

答案 0 :(得分:1)

请注意,您错过了两个链接的结束h3

$(".contactLink").click(function() {
    var value = $(this).closest("table") // Get the <a>'s closest <table>
                       .siblings(":hidden") // <hidden>
                       .val(); 
});

Fiddle供参考。

答案 1 :(得分:-1)

如果我理解你的问题:

  

在其中一个文字中,我正在创建一个标签,我想找到   &lt;%#Eval(“id”)%&gt;标记的点击事件中的值。

我会说这样的话可以解决问题

$('a').live("click", function () {
alert($(this).attr("id"))
});