datagrid每行有一个Button 点击Button获得所在行数值 datagrid每行有一个Button 点击Button获得所在哪个行 本行第一列还有个panel控件 初始Visible=false点击按钮后 panel.visible=true;请问怎样实现? 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在ItemCommand中可以获取到你单击了哪行的按钮,不过你得设定按钮的commandname,然后在此事件中通过e.CommandName=="???"来判断是否单击了按钮,这个e参数应该就可以获取哪一行了,实在不行的,你也可以通过绑定button的commandArgument值来获取,让这个属性保存索引号 Me.GridView1.Rows(e.CommandArgument).Cells(3).Text使用上面的代码,可以取得所点击按钮行的,第4列的数据。 css样式我就不写了 楼主试试吧var arrPanel=new Array();var arrButton = new Array();$(function(){ $("#GridView1").find(".abc").each(function(){ arrPanel.push($(this)); }) $("#GridView1").find("input[name='dis']").each(function(){ arrButton.push($(this)); }) $.each(arrButton, function(x){ arrButton[x].click(function(){ if(arrPanel[x].is(":visible")){ arrPanel[x].css("display", "none"); } else{ arrPanel[x].css("display", "block"); } }) })})<asp:GridView ID="GridView1" AutoGenerateColumns="False" runat="server" DataKeyNames="Id" DataSourceID="SqlDataSource1"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Panel ID="i" class="abc" runat="Server" style="display:none;"> <h1>lsdjfsl</h1> </asp:Panel> </ItemTemplate> </asp:TemplateField> <asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="Id" /> <asp:BoundField DataField="a_title" HeaderText="a_title" SortExpression="a_title" /> <asp:BoundField DataField="a_time" HeaderText="a_time" SortExpression="a_time" /> <asp:CheckBoxField DataField="a_isIndex" HeaderText="a_isIndex" SortExpression="a_isIndex" /> <asp:TemplateField> <ItemTemplate> <input type="button" name="dis" value="DISPLAY" /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> 给Button属性中加上CommandArgument='<%# Eval("主键字段") %>'然后在后台按钮点击事件中判断获取到CommandArgument属性的值,显示不同的Panel 麻烦大家帮我看下样式兼容的问题 急.asp.net下显示三行三列 AJAX的Update Panel中存在一个按钮,如何点击按钮弹出Confirm框? 怎么实现添加? 求助asp.net(vb)中取一小段字符串 bin文件夹里边的.dll文件是怎么来的 asp.net2005中控件怎么移动不了 用过toolbar的朋友请进~~~~~有关toolbar与frameset 关于网站会员密码的加密问题,请教设计过的同仁 今天女友生日,各位多多关照··散分散分·· 这样的sql语句应该如何写 求个思路
使用上面的代码,可以取得所点击按钮行的,第4列的数据。
var arrButton = new Array();
$(function(){
$("#GridView1").find(".abc").each(function(){
arrPanel.push($(this));
})
$("#GridView1").find("input[name='dis']").each(function(){
arrButton.push($(this));
})
$.each(arrButton, function(x){
arrButton[x].click(function(){
if(arrPanel[x].is(":visible")){
arrPanel[x].css("display", "none");
}
else{
arrPanel[x].css("display", "block");
}
})
})
})
<asp:GridView ID="GridView1" AutoGenerateColumns="False" runat="server" DataKeyNames="Id" DataSourceID="SqlDataSource1">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Panel ID="i" class="abc" runat="Server" style="display:none;">
<h1>lsdjfsl</h1>
</asp:Panel>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True"
SortExpression="Id" />
<asp:BoundField DataField="a_title" HeaderText="a_title" SortExpression="a_title" />
<asp:BoundField DataField="a_time" HeaderText="a_time" SortExpression="a_time" />
<asp:CheckBoxField DataField="a_isIndex" HeaderText="a_isIndex" SortExpression="a_isIndex" />
<asp:TemplateField>
<ItemTemplate>
<input type="button" name="dis" value="DISPLAY" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
然后在后台按钮点击事件中判断获取到CommandArgument属性的值,显示不同的Panel