要求
在用户控制中(在单个更新面板中) - 用户将更改某些数据并单击除保存按钮以外的按钮或链接按钮
我们向用户提示对话框(是/否/取消)
取消后,我们什么也没做,并且保持在同一页上
开启否 - 我们会在不保存数据的情况下进一步重定向/处理。
在保存时,我们必须保存更改并进一步重定向/处理。
问题在于保存
我们在页面上有不同的面板(用户控件上相同)
选择是,在这里我们称之为" _ doPostBack"对于保存按钮单击事件(工作正常),并在下面相同的JavaScript函数中保存回发调用其他" _doPostBack"隐藏当前面板(Panel-1)并显示另一个面板(Panel-2)和服务器端进程。
但它始终显示(Panel-1) 但是在FF中,Panel-2只是提示并再次隐藏。
编辑:隐藏面板位于服务器端,因为有多个按钮显示/隐藏面板。
预期结果为:保存数据后,显示Panel-2并隐藏Panel-1
任何人都知道如何克服这个问题?
答案 0 :(得分:0)
如果没有一些实际的代码,有点难以看到发生的事情,但据我所知,这是一个时间问题。
单击“是”时,执行回发功能并在隐藏面板后立即执行。 你的'doPostback'实际上是同步的。意思是响应稍晚(不是立即)。因此,当响应返回时,它会更新您的页面,这就是您流动的地方。
FF可能足够快,可以真实地向您展示实际发生的事情。你的隐藏功能正常,但被ajax响应覆盖。
我建议您使用来自服务器的响应异步隐藏面板。
以下是一些链接: - RegisterClientScriptBlock within AJAX method call
RegisterStartupScript doesn't work with ScriptManager,Updatepanel. Why is that?
我希望这可以帮助你走上正轨。
祝你好运