【问题标题】:Possible to disable postback in a DOM element?可以在 DOM 元素中禁用回发吗?
【发布时间】:2017-04-10 17:41:57
【问题描述】:

我在我的 ASP.NET WebForms 应用程序的页面中搜索以禁用回发。这个 aspc 页面将是 100% javascript(使用 vue.js)并且不包含 ASP.NET 控件。

如果我在其上放置一个 HTML 按钮,我必须不要忘记在 onClick 事件中添加一个“return false”。我的目标是不必考虑这个。

是否可以在这个特殊页面上禁用回发?

【问题讨论】:

    标签: javascript asp.net webforms postback


    【解决方案1】:

    我认为您无法阻止页面回发。但是您可以一次在您的身体上使用 javascript 而不是所有按钮:

    <body onsubmit="return false;">
    

    【讨论】:

      【解决方案2】:

      可以为所有元素的点击事件添加覆盖。由于这些事件“堆叠”,因此应该在任何其他点击绑定事件之前添加。

      <script type="text/javascript">
          $(function () {
              $('*').on('click', function(event) { event.preventDefault(); });
          });
      </script>
      

      这也将捕获“动态”添加的任何元素。我还没有调查过这种方法的潜在副作用。但它确实阻止表单通过带有回发的按钮/链接点击提交。

      【讨论】:

        【解决方案3】:

        只使用 html 纯 html 控件,避免使用 webcontrols 或任何带有 runat="server" 的 html 控件

        【讨论】:

          猜你喜欢
          • 2021-06-15
          • 2011-12-08
          • 1970-01-01
          • 2014-10-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-08-14
          相关资源
          最近更新 更多