如何获得点击按钮的值
如何获得点击按钮的值(value或者name或者id 任意一个都可以)
我需要将按钮值传到这个方法里面:
C# code
protected void BtnFirst_Click(object sender, EventArgs e)
{
Response.Redirect("index.aspx?PageID=1"); //这是我的一个分页代码 的一部分。作用是点击后回到第一页
}
上面提到的按钮。是搜索按钮,我需要这样的结果:
C# code
protected void Response.Redirect(object sender, EventArgs e)
{
if(Session["btn"] = Request.Form["btnserch"])
{
Response.Redirect("index.aspx?PageID=1&game=" + game + ""); //这是我的一个分页代码 的一部分。作用是点击后回到第一页
}
}
代码编译可以成功,但是问题出在Response.Redirect,只要点击Response.Redirect,等于清空session一样。没办法保留住按钮的值。所以这个if语句就起不到作用。如何在原有基础上修改这段代码才能保留住按钮的值呢?
------解决方案--------------------if(Session["btn"] = Request.Form["btnserch"])
这个可以通过啊。。
不行吧。。
要用==这样子吧。。
redirect是跳转哦,不是在本页postback哦。。
------解决方案--------------------用LinkButton设置CommandName, CommandArgument属性
------解决方案--------------------在你的事件中sender对象,就是你的事件源对象如:
((LinkButton) sender).Text 就是
------解决方案--------------------void btnClick(object sender,System.EventArgs e)
{
string arg=((LinkButton)sender).CommandArgument;
switch(arg)
{
case ("first"):
DataGrid1.CurrentPageIndex=0;
break;
case ("prev"):
if(DataGrid1.CurrentPageIndex>0)
DataGrid1.CurrentPageIndex--;
break;
case ("next"):
if(DataGrid1.CurrentPageIndex<(DataGrid1.PageCount-1))
DataGrid1.CurrentPageIndex++;
break;
case ("last"):
DataGrid1.CurrentPageIndex=DataGrid1.PageCount-1;
break;
default:
DataGrid1.CurrentPageIndex=Convert.ToInt32(arg);
break;
}
BindGrid();//数据绑定方法
}
------解决方案--------------------
------解决方案--------------------楼上正解啊!
------解决方案--------------------((Button)Sender).Text或其他属性
------解决方案--------------------(sender as Button).Text