.net里怎么判断页面的请求到底是由哪个按钮触发的?
我想在页面加载Page_Load(objectsender,EventArgse)的事件里去运行一个判断方法,这个方法的返回一个int型的flag,如果是button1按...
我想在页面加载Page_Load(object sender, EventArgs e) 的事件里去运行一个判断方法,这个方法的返回一个int型的flag,如果是button1按钮触发的请求,那在这个判断方法里就把flag=1,如果是button2就把flag=2。。。这样类推,所以现在想请教下这个判断方法的if该怎么写才能得到我想要的这个flag!
如果谁给的方法可行的话再加20分!!
第一个方法的话。。。。我觉得可能行不通吧。
因为页面在初始化的时候肯定是先运行Page_Load(object sender, EventArgs e) 事件,所以这样一来那个viewstate的值可能就读不到!
第二个中,我现在用的就是2.0,只是看了后还是不知道该怎么做!能再具体点么?这里再补充一点,我在页面上用的是<asp:Button>这个组件.没有用html的那个button
回答2楼的,因为点击事件的执行顺序在Page_Load事件之后,而我想在页面初始化的时候就要得到这个参数
我已经用JS解决了,这个分我很想给你们三个人平分,可惜BD还没有这样的功能,没办法,只能看谁的内容多给谁了 展开
如果谁给的方法可行的话再加20分!!
第一个方法的话。。。。我觉得可能行不通吧。
因为页面在初始化的时候肯定是先运行Page_Load(object sender, EventArgs e) 事件,所以这样一来那个viewstate的值可能就读不到!
第二个中,我现在用的就是2.0,只是看了后还是不知道该怎么做!能再具体点么?这里再补充一点,我在页面上用的是<asp:Button>这个组件.没有用html的那个button
回答2楼的,因为点击事件的执行顺序在Page_Load事件之后,而我想在页面初始化的时候就要得到这个参数
我已经用JS解决了,这个分我很想给你们三个人平分,可惜BD还没有这样的功能,没办法,只能看谁的内容多给谁了 展开
2个回答
展开全部
第一种可以运用再其他处理过程中,不适合运用在pageload种,第二种建议你看看我的参考资料中的链接,我手边电脑刚好没有开发环境,如果你有兴趣,晚上我可以做试验。。。。。
1、利用viewstate 在每个控件相应的事件中给viewstate赋值
然后在pageload事件中判断 viewstate 的值做判断。反正viewstate 不会跨页面传递
2、先通过 string postBackControlUniqueID = Request.Form[ "__EVENTTARGET "];
获取引发回发的控件的 UniqueID 属性( 客户端 name 属性)
然后页面上查找具有此 UniqueID 的控件(需要递归查找)
以上 asp.net 1.x 即可完成任务
但,对于 asp.net 2.0, Button 默认使用 type=submit 方式提交,
故,此按钮提交的时候,
string postBackControlUniqueID = Request.Form[ "__EVENTTARGET "]; 得到的是空值,
那么此时,遍历 Request.Form 集合,并且查找对应的控件,判断是否为 Button [ if(someControl is Button) ],且其 UseSumitBehavior=true
1、利用viewstate 在每个控件相应的事件中给viewstate赋值
然后在pageload事件中判断 viewstate 的值做判断。反正viewstate 不会跨页面传递
2、先通过 string postBackControlUniqueID = Request.Form[ "__EVENTTARGET "];
获取引发回发的控件的 UniqueID 属性( 客户端 name 属性)
然后页面上查找具有此 UniqueID 的控件(需要递归查找)
以上 asp.net 1.x 即可完成任务
但,对于 asp.net 2.0, Button 默认使用 type=submit 方式提交,
故,此按钮提交的时候,
string postBackControlUniqueID = Request.Form[ "__EVENTTARGET "]; 得到的是空值,
那么此时,遍历 Request.Form 集合,并且查找对应的控件,判断是否为 Button [ if(someControl is Button) ],且其 UseSumitBehavior=true
参考资料: http://www.mscto.com/AspNet/101048506.html
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询