【问题标题】:What can prevent a Postback in ASP.NET?什么可以防止 ASP.NET 中的回发?
【发布时间】:2009-09-10 21:11:07
【问题描述】:

我们有一个用户在使用 ASP.NET 应用程序时遇到问题。用户无法收集许多详细信息,但此时我们最好的猜测是 PostBack 没有发生。在用户单击 LinkBut​​ton 和应该发出 HTTP 请求之间出现了问题。

(用户确实启用了 JS)

除了解决眼前的问题之外,收集可能破坏 ASP.NET 控件的 PostBack 行为的规范列表可能对后代有所帮助。

【问题讨论】:

  • 这个应用有没有用过?有没有回帖过?是否有任何特殊条件可以确定应用将在何处回发与在何处不回发?
  • 它适用于每个人,除了一个特定的用户。就像我说的那样,我们无法对此进行详细讨论,以确定他们的设置有何独特之处。

标签: asp.net postback


【解决方案1】:

如果您说按钮具有回发事件以及单击时的 javascript 事件,则如果触发的 javascript 事件返回 false 回发将被停止。

【讨论】:

    【解决方案2】:

    我会首先检查您的<form> 标签格式是否正确,并且您没有嵌套<form> 标签。两次我都调试了与回发有关的事情,结果证明这是问题所在。这很令人困惑,因为它是一个依赖于浏览器的问题。

    【讨论】:

      【解决方案3】:

      Having a self-closing <script /> tag 可以阻止回发的发生。让用户从他们的日志中向您发送任何 javascript 错误。在 IE8 中实际上有一个不错的 JS 调试器(这是其中唯一的好处!)。

      【讨论】:

        【解决方案4】:
        • 没有方法属性的表单,或方法注释设置为 POST
        • 不返回 true 的 onsubmit 事件处理程序
        • 尝试以编程方式提交表单,但无法通过 id 定位表单,因为页面上有另一个具有相同 id 的元素

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-04-04
          • 2023-03-08
          • 2011-05-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多