【问题标题】:Multiple Async postbacks at the same time - ASP.NET同时进行多个异步回发 - ASP.NET
【发布时间】:2011-05-23 20:19:29
【问题描述】:

假设我在页面上有 2 个UpdatePanels,每个UpdatePanel 都有一个服务器Button。当我单击第一个按钮,然后单击第二个按钮并查看 Firebug 时,我看到在第一个完成之前不会触发第二个异步回发。

这是否按预期工作?我的理解是 AJAX 回发,按钮的事件处理程序同时触发。

编辑:对任何人有帮助吗?

【问题讨论】:

    标签: asp.net asp.net-ajax webforms


    【解决方案1】:

    该模型是准确的。您可能需要页面方法。

    编辑: drachenstern 说“终于回到我的电脑前了”

    事情是这样的:UpdatePanel 基本上是一个页面回发。它一次只能发布一个事件。该模型不理解两个同时发生的事件。所以每次点击都是一次完整的回发。因此它不会启动一个直到另一个完成。

    就像我说的,这是模型的准确行为。除了定义自己的模型之外,您实际上无法更改模型。你不能只希望模型做你想做的事情,而不能定义你想要发生的事情。

    【讨论】:

    • 我的按钮事件处理程序需要访问其他控件。 PageMethods 需要是静态的
    • @DaveS ~ 我更新了我的答案。你不会像我想象的那样喜欢我的回答。我的建议是弄清楚如何使您的事件成为静态/无状态的,否则我认为这不会像您想要的那样工作。
    • 多个部分回发可以同时被触发 - 这将导致他们“互相踩踏”,但它可以和确实发生。需要额外的工作(即由 SharePoint 完成的工作)才能为这种“踩踏”行为添加一个块。
    • 嗯,是的,我试图遵循天真的案例,因为大多数开发人员在提出这类问题时都会遇到这种情况。我可以想办法强制多个并发和同时发生的事件。请不要迂腐,不要因为“你有点不对劲”而投反对票
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-31
    • 2017-01-22
    • 1970-01-01
    • 2016-08-03
    • 2012-05-11
    • 1970-01-01
    • 2023-03-29
    相关资源
    最近更新 更多