怎么才能获取到当前点击的按钮的ID 因为好多页面都有一个类似的按钮,按钮事件的代码是差不多的,只是不同的页面对应不同的一个参数值。想写一个通用函数,根据不同的按钮的ID设置不同的参数值,只是按钮的ID不知道怎么取?请高手指教。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给你据个例子:<asp:Button ID="Button1" runat="server" OnClick="MyButtonClick" Text="Button" /><asp:Button ID="Button2" runat="server" OnClick="MyButtonClick" Text="Button" /><asp:Button ID="Button3" runat="server" OnClick="MyButtonClick" Text="Button" /> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>protected void MyButtonClick(object sender, EventArgs e){ Button button = sender as Button; Label1.Text = button.ID;} 设置按键的CommandName属性<asp:Button ID="Button1" runat="server" OnCommand="MyButtonClick" CommandName="add" Text="Button" /><asp:Button ID="Button2" runat="server" OnCommand="MyButtonClick" CommandName="edit" Text="Button" /><asp:Button ID="Button3" runat="server" OnCommand="MyButtonClick" CommandName= "del" Text="Button" /> protected void MyButtonClick(object sender, CommandEventHandler e){ if(e.CommandName=="add") { //执行添加 } else if(e.CommandName=="add") { //执行编辑 } else if(e.CommandName=="add") { //执行删除 }} 2楼的方法是最常用的方法用CommandName命令参数 anliuty 哭过的天空 两位的方法要一个一个页面的改,工作量比较大。我想在一个地方写统一的函数获取。有没有更好的方法? 那就写一个方法,把BUTTON当这个方法的形参 zhiaini 我不想去每个页面做修改,只是在连接数据库操作的最后一步加个函数获取当前点击的按钮。所以不能把button当作参数来传。 如Button的Name为:Button1,Button2,Button3...等 则: Protected void buttonCommand_Click(object sender,EventArgs e) { if(sender==this.button1) { ...... } if(sender==this.button2) { ...... } if(sender==this.button3) { ...... } } 假如执行的动作都一样,当然也可以做个循环来搞定。 Button x = (Button)sender; x.ID可以分辨 如果不是在列表控件的项中的按钮protected void ButtonClick(object sender, EventArgs e){ Button button = sender as Button; string Id=button.ID; }这个就行,当然如果你的按钮是在一个列表控件中,如GridView,DataList等,需要通过设置CommandName来做 Protected void buttonCommand_Click(object sender,EventArgs e) { if(sender==this.button1) { ...... } if(sender==this.button2) { ...... } if(sender==this.button3) { ...... } } 这个方法应该可以,不过仍然需要查找所有的ID。 那就写个继承Page的基类,把按钮事件写在基本里,调用的页面继承基类 我还没搞清楚你说的是客户端的还是服务器端的<input type=button id=btn value=btn onclick="javascript:ck();"/><script>function ck(){ var btnId=event.scrElemnt.ID;//IE //对于ff的写法自己去查}</script>Protected void button_Click(object sender,EventArgs e){ string id=((Button)sender).clientID;} 哭过的天空那就写个继承Page的基类,把按钮事件写在基本里,调用的页面继承基类 这样的话,还是要每个页面都去改代码。niuniuhuang由于我想写一个新的页面或新的类去实现这个功能,所以还没有代码。也就是说,我的需求是和系统原先的代码无关的,无论哪个页面点了按钮,我都能取到按钮的ID或者按钮的其他属性 关于服务器连接的问题 发布网站的几个问题。 求一个简单的正则表达式 讨论下.net 的MVC 急,如何在script里写代码获取GridView。。。。。。。。。。。 近期我们的oracle数据库很慢,我的网页从里面统计数据时很慢,我想如果在规定的时间内统计不出数据来就跳过去 一段html标签加上后DataGrid的删除功能就失效,去掉就管用了,奇怪呀!! 取消网页按钮的默认焦点 在c#里有没有象javascript里的eval函数一样的函数? 关于XML与DataList的邦定问题? 图片替换问题 迷惑中。。。。。求解
<asp:Button ID="Button2" runat="server" OnClick="MyButtonClick" Text="Button" />
<asp:Button ID="Button3" runat="server" OnClick="MyButtonClick" Text="Button" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
protected void MyButtonClick(object sender, EventArgs e)
{
Button button = sender as Button;
Label1.Text = button.ID;
}
<asp:Button ID="Button2" runat="server" OnCommand="MyButtonClick" CommandName="edit" Text="Button" />
<asp:Button ID="Button3" runat="server" OnCommand="MyButtonClick" CommandName= "del" Text="Button" /> protected void MyButtonClick(object sender, CommandEventHandler e)
{
if(e.CommandName=="add")
{
//执行添加
}
else if(e.CommandName=="add")
{
//执行编辑
} else if(e.CommandName=="add")
{
//执行删除
}}
用CommandName命令参数
两位的方法要一个一个页面的改,工作量比较大。我想在一个地方写统一的函数获取。
有没有更好的方法?
我不想去每个页面做修改,只是在连接数据库操作的最后一步加个函数获取当前点击的按钮。
所以不能把button当作参数来传。
{
if(sender==this.button1)
{
......
}
if(sender==this.button2)
{
......
}
if(sender==this.button3)
{
......
}
} 假如执行的动作都一样,当然也可以做个循环来搞定。
x.ID可以分辨
protected void ButtonClick(object sender, EventArgs e)
{
Button button = sender as Button;
string Id=button.ID;
}这个就行,
当然如果你的按钮是在一个列表控件中,如GridView,DataList等,需要通过
设置CommandName来做
{
if(sender==this.button1)
{
......
}
if(sender==this.button2)
{
......
}
if(sender==this.button3)
{
......
}
} 这个方法应该可以,不过仍然需要查找所有的ID。
那就写个继承Page的基类,把按钮事件写在基本里,调用的页面继承基类
<script>
function ck()
{
var btnId=event.scrElemnt.ID;//IE //对于ff的写法自己去查
}
</script>Protected void button_Click(object sender,EventArgs e)
{
string id=((Button)sender).clientID;
}
那就写个继承Page的基类,把按钮事件写在基本里,调用的页面继承基类
这样的话,还是要每个页面都去改代码。niuniuhuang
由于我想写一个新的页面或新的类去实现这个功能,所以还没有代码。
也就是说,我的需求是和系统原先的代码无关的,无论哪个页面点了按钮,我都能取到按钮的ID或者按钮的其他属性