在前台: <ItemTemplate>
<asp:ImageButton ID="img00" CommandName="Select" OnClick ="dategrid1_ItemDataBound" ImageUrl='<%#Eval("ImagePath") %>' runat="server" />
</ItemTemplate>
后台用什么事件能取出其他列的值呢?比如:点击图片链接,同行的一个字段能取出。 急
谢了
<asp:ImageButton ID="img00" CommandName="Select" OnClick ="dategrid1_ItemDataBound" ImageUrl='<%#Eval("ImagePath") %>' runat="server" />
</ItemTemplate>
后台用什么事件能取出其他列的值呢?比如:点击图片链接,同行的一个字段能取出。 急
谢了
<asp:ImageButton ID="img00" CommandName="Select" OnClick ="dategrid1_ItemDataBound" ImageUrl=' <%#Eval("ImagePath") %>' runat="server" CommandArgument='<%#Eval("ImagePath") %>' />
</ItemTemplate> 然后在ItemCommand事件中
if (e.CommandName == "Select")
{
string str=e.CommandName.ToString();
}
而后在 按钮的点击事件里写 button btn=sender as button; int i=int.pase(btn.commandName);
gridviewrow row=gridview1.rows[i];
如此 row 就是当前点击行。
..................
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onclick", e.Row.ClientID.ToString() + ".checked=true;Up_Click(this)");
//RowDataBound 增 行单击事件 this:行;e.Row.RowIndex:行索引
}
}
JS:
function selectx(row) //ROW 参数为行对象,可取到行索引,行的数据等等
{
var data = document.getElementById("dataid");
data.value = row.cells[0].innerHTML;
}
........................
你在gridview中添加了一个模版列里面弄了一个按钮
在girdview的rowcommand里面
Button btn = e.CommandSource as Button;
Control c = btn.NamingContainer;
GridViewRow row = c as GridViewRow;
int index = row.RowIndex;
.................
e.Row.Attributes.Add("onclick","selectx(this)");
//RowDataBound 增 行单击事件 this:行;e.Row.RowIndex:行索引
.................
C# code
protected void Button1_Click(object sender, EventArgs e)
{
GridViewRow gvr = (sender as Button).NamingContainer as GridViewRow;
if(gvr != null)
{
int index = gvr.RowIndex;//index就是所点击行的行索引
}
}