jQuery validation fails when putting step="1" in a "datetime-local" input type

A. *_*ias 5 validation jquery jquery-validate

I'm using https://jqueryvalidation.org/ form validation plugin

When I put step="1" in a datetime-local input field to show seconds, if I'm validating that field with the plugin (just "required", for example), I get a javascript error saying "Step attribute on input type datetime-local is not supported". If I put this step="1" in a field that is not being validated, it works without problems.

$("#testingform").validate();
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/jquery-validation@1.17.0/dist/jquery.validate.min.js"></script>
<form id="testingform">
    <input type="datetime-local" step="1" name="date1" required>
    <button type="submit">Send</button>
</form>
Run Code Online (Sandbox Code Playgroud)

... just put a date and time WITH SECONDS, and click 'Send' button. You can see the error in the console.

I've already opened a bug in the github page of the project, but maybe any of you had the same problem and have found a way to solve it or at least avoid it for the moment until they fix it.

Vix*_*xed 6

jQuery 验证会自动对输入类型应用规则,因此无法验证步骤

这将帮助您:

$("#testingform").validate({
  rules: {
    date1: {step: false}
  }
});
Run Code Online (Sandbox Code Playgroud)
<form id="testingform">
    <input type="datetime-local" step="1" name="date1" required>
    <button type="submit">Send</button>
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/jquery-validation@1.17.0/dist/jquery.validate.min.js"></script>
Run Code Online (Sandbox Code Playgroud)