gridview asp.net中选定行的标签与jquery

时间:2017-12-15 13:11:54

标签: c# jquery asp.net gridview

我想在我的gridview中使用Jquery

返回文本标签
 <div class="risksContainer">
        <div class="risksGrid">
            <asp:GridView ID="GridViewRisks" runat="server" 
        [...]
        />
                <Columns> 
                    <asp:TemplateField HeaderText="...">
                        <ItemTemplate>
                            <div class="CodeProductColumn">
                                <asp:Label ID="IDRisk" runat="server" CssClass="IDRiskIndex" Text="<%# Item.ID_Risk %>" />
                                <asp:Repeater ID="LabelRepeatCodeProduct" runat="server"
                                [....]
                          </asp:Repeater>
                   </div>
            </ItemTemplate>

我尝试了很多解决方案,但我不知道如何获得所选行的标签Text。 javascript:

function blabla(){
 var Id_risk = $(".risksContainer .risksGrid .IDRiskIndex").text();
 alert("Id_risk =" + Id_risk );
 return Id_risk ;
}

(当我点击我的行中的编辑按钮时,此功能开始)

我获取了gridview中所有行的文本,而不仅仅是我选择的行。 我尝试使用&#34; parent,child,first,selected,rows [] ...... 我是初学者,我非常渴望找到它

2 个答案:

答案 0 :(得分:1)

假设您使用GridViewRisks.SelectedIndex = i在代码中设置了所选行,您可以设置所选行的CSS类。

<asp:GridView ID="GridViewRisks" runat="server" SelectedRowStyle-CssClass="selectedRow">

现在您可以使用该类在jQuery中获取正确的行。

var Id_risk = $(".selectedRow .IDRiskIndex").text();

答案 1 :(得分:1)

在JavaScript中使用try:

<script type="text/javascript"> 
  function blabla() 
  {
      // find gridview
      var gv = document.getElementById("<%=GridViewRisks.ID %>");

      // get row count
      var gvRowCount = gv.rows.length;
      var i = 1;
      for (i; i<= gvRowCount - 1; i++) 
      {
      // get label value from column 2
      alert(gv.rows[i].cells[2].childNodes[1].innerHTML);
      }
      return false;
  }
</script> 
<asp:Button ID="Button1" runat="server" OnClientClick=" blabla();return false;" ... />