我想在我的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 [] ...... 我是初学者,我非常渴望找到它
答案 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;" ... />