当前位置: 代码迷 >> ASP.NET >> 小弟我定义了一个<asp:button id="RegisterButton" runat="server" Text="按钮" onclick="ButtonClick" ></asp:button>有什么办法让响应这个函数时不调用page_load函数
  详细解决方案

小弟我定义了一个<asp:button id="RegisterButton" runat="server" Text="按钮" onclick="ButtonClick" ></asp:button>有什么办法让响应这个函数时不调用page_load函数

热度:7866   发布时间:2013-02-25 00:00:00.0
我定义了一个<asp:button id="RegisterButton" runat="server" Text="按钮" onclick="ButtonClick" ></asp:button>,有什么办法让响应这个函数时不调用page_load函数
我定义了一个<asp:button id="RegisterButton" runat="server" Text="按钮" onclick="ButtonClick" ></asp:button>,有什么办法让响应这个函数时不调用page_load函数

------解决方案--------------------------------------------------------
没办法吧?可能只能新开个窗口了。不然用ispostback应该会影响到程序。等强人的答案。
------解决方案--------------------------------------------------------
你可以试一下用HTML控件嘛!不用这个服务器控件.
------解决方案--------------------------------------------------------
根据ASP.NET页面运行机制,页面回刷是不可能不调用page_load的
如果不想执行某些方法就放在if(!ispostback)里
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) 

}
}
------解决方案--------------------------------------------------------
RegisterButton.Attributes.Add("onClick", "return false")

------解决方案--------------------------------------------------------
lz是想把这个按钮只在客户端执行?如果是的话,可以(1)用HTML中的input按钮,(2)在pageload中加上
RegisterButton.Attributes.Add("onClick", "return false");

如果lz是想把该按钮在服务器端运行并且不调用pageload,那么可以在pageload中加入
if (!IsPostBack) 

你的代码;
}
------解决方案--------------------------------------------------------
无私无畏地支持以上同志们的意见.
------解决方案--------------------------------------------------------
同意三楼的见解

回传页面,一般会触发Page_Load事件处理函数
------解决方案--------------------------------------------------------
protected void Page_Load(object sender, EventArgs e) 

if (!IsPostBack)
{


else
{ }
}
------解决方案--------------------------------------------------------
可以考虑下用ajax实现``或直接用js实现~
------解决方案--------------------------------------------------------
问题是按了注册按钮又执行了Page_load使得校验码值改变,而用户先前输入的值又不能对应了。
==========>
注册码在哪里生成的?在Page_Load事件里生成的吗?

注册码一般在一个独立的文件里生成,以图像的形式输出给客户端,并将值保存在Session中。然后在注册页面里用一个图片来引用,如:
<img src="CrateNumberImage.aspx" />

------解决方案--------------------------------------------------------
服务器控件是一定会引起数据回发的,除非特殊比如ajax等技术实现部分数据回复到服务端
要想彻底不回发数据,那只有使用javascript了吧,等孟子了
------解决方案--------------------------------------------------------
我是想刷新页面的时候,校验码值也改变,但是我想让这个按钮执行的时候不执行Page_load,有什么办法? 
谢谢高手来帮忙
===========================
把你生成验证码的代码放到if(!ispostback){}里就OK了
------解决方案--------------------------------------------------------
直接用JS实现!!!
  相关解决方案