【问题标题】:How to prevent HTML5 form validation on non-submit button?如何防止非提交按钮上的 HTML5 表单验证?
【发布时间】:2016-07-12 20:36:33
【问题描述】:

带有重置和提交按钮的表单,但两者都导致 HTML5 验证。当用户单击重置时,我只想清除这些字段。假设这是任何表单按钮的默认操作,而不仅仅是提交,我如何防止默认操作,但仍运行自定义操作?

<button data-ng-click="reset()">Reset Form</button>
<input type="submit" data-ng-click="main.$valid && post('Check')" class="submitbtn" value="Submit" />

【问题讨论】:

  • 你可以尝试使用&lt;input type="reset"/&gt;,因为那是一回事。

标签: html validation


【解决方案1】:

为按钮指定按钮的类型属性:

<button type="button" data-ng-click="reset()">Reset Form</button>

【讨论】:

    【解决方案2】:

    为表单提供一个包含e.preventDefault()onsubmit 处理程序,并在您的“提交”处理程序中调用form.submit()

    【讨论】:

      【解决方案3】:

      这样设置它的类型属性:

      <button type="button">Reset Form</button>
      

      【讨论】:

        【解决方案4】:

        在 ASP.NET 中,如果您使用 HTML 验证,为了防止其他按钮提交您的表单,您可以将属性 UseSubmitBehavior 设置为 FALSE。它将阻止它提交表单并导致验证。

        asp:Button ID="btnBack" UseSubmitBehavior="false" OnClick="btnNewGameBack_Click" runat="server" CssClass="btn btn-secondary btn-lg m-1" Text="Back"/>
        

        【讨论】:

          猜你喜欢
          • 2016-02-07
          • 1970-01-01
          • 2021-02-03
          • 1970-01-01
          • 2022-01-22
          • 2018-09-29
          • 1970-01-01
          相关资源
          最近更新 更多