首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UpdatePanel中的双PostBack

UpdatePanel中的双PostBack
EN

Stack Overflow用户
提问于 2011-07-30 23:28:31
回答 4查看 3.5K关注 0票数 1

我有一个问题的ASP.NET触发按钮点击两次。按钮在UpdatePanel中,但当我单击它时,我会得到两次回发,然后是两次按钮单击,然后是对我的DAL的两次调用(按此顺序)。我以前从未遇到过这种情况,并且将AutoEventWireup更改为false没有任何效果。我能想到的唯一解决办法是隐藏web服务中的功能,并使用jQuery处理复杂的问题,我不愿在小型项目中这样做。

下面是firebug转储(这两个转储都是通过单击实现的)。

EN

回答 4

Stack Overflow用户

发布于 2014-04-03 04:49:50

将以下脚本放在页面上的ScriptManager之后。

代码语言:javascript
复制
<script type="text/javascript"> 
var postbackControl = null; 
var parm = Sys.WebForms.PageRequestManager.getInstance(); 
parm.add_beginRequest(BeginRequestHandler); 
parm.add_endRequest(EndRequestHandler); 

function BeginRequestHandler(sender, args) 
{ 
 postbackControl = args.get_postBackElement(); 
 postbackControl.disabled = true; 
} 
function EndRequestHandler(sender, args) 
{ 
postbackControl.disabled = false; 
postbackControl = null; 
} 
</script>
票数 6
EN

Stack Overflow用户

发布于 2011-07-31 00:45:06

会不会是你已经将jQuery click()连接到了这个按钮,而这个按钮也被ASP.NET隐式地内联到了onchange?

jQuery.change + inline onchange fn() causes fn to execute twice

或者,您是否检查过是否已经两次挂接了服务器端处理程序,都是在标记中声明和在代码隐藏中强制挂接?

票数 0
EN

Stack Overflow用户

发布于 2011-07-31 02:33:00

奇怪的是,这似乎是由于按钮的一个不可靠的ControlAdapter造成的,它在按钮标签内添加了一个跨度,以使滑动门工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6884134

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档