要求
在用户控件中(在单个更新面板中)-用户将更改某些数据并单击按钮或链接按钮,而不是保存按钮。
我们将对话框提示为用户(是/否/取消)
取消时,我们什么也不做,保持原样。
在不-我们重定向/处理进一步,而不保存数据。
在保存时,我们必须保存更改并进一步重定向/处理。
这里的问题是保存
我们在页面上有不同的面板(在用户控制上也一样)
在选择“是”时,我们在这里调用"_doPostBack“以保存按钮,单击事件(工作正常),并在保存回发下面的相同javascript函数中调用其他"_doPostBack”来隐藏当前面板( panel -1),并显示另一个面板(Panel-2)和服务器端进程。
但它总是显示(面板-1)然而在FF,面板-2只是提示和隐藏再次。
编辑:隐藏面板在服务器端,因为有多个显示/隐藏面板的按钮。
预期结果是:保存数据后,显示面板-2和隐藏面板-1。
有人能想到如何克服这个问题吗?
发布于 2014-04-11 11:29:09
如果没有一些实际的代码,就很难看出发生了什么,但据我所知,这是一个时间问题。
单击“是”时,执行回发功能,并在隐藏面板后立即执行回发功能。您的“doPostback”实际上是同步的。这意味着响应来得晚一点(不是立即)。因此,当响应返回时,它会更新您的页面,这就是您的流正在崩溃的地方。
FF可能已经足够快地告诉你实际发生了什么。隐藏函数工作正常,但被ajax响应覆盖。
我建议您异步隐藏面板,并使用来自服务器的响应。
下面是一些关于它的链接:- RegisterClientScriptBlock within AJAX method call
RegisterStartupScript doesn't work with ScriptManager,Updatepanel. Why is that?
我希望这能帮你走上正轨。
祝好运
https://stackoverflow.com/questions/23010941
复制相似问题