提交后如何关闭Bootstrap模态?

How to close the Bootstrap modal after submit?

这里我有一个 Bootstrap 模态。我的要求是当我成功提交带有提交按钮的表单时,我想在几秒钟后关闭模式。这里的问题是 当我在输入中输入一些文本而不是整数时,或者如果我输入了一些无效的输入,然后当我单击提交按钮时,输入字段显示错误并且模式在几秒钟后立即关闭。

如果单击提交按钮时输入字段无效,我不想关闭 Bootstrap 模式。

我该怎么做?

编辑:它与有效输入完美结合。

html

 <div class="modal-body">
 <form action="">
     <input type="number" name="rows" min="0" value="0" max="10" required><br>
     <button type="submit" id="my_button" class="btn btn-info btn-sm">Submit</button>
 </form>
 </div>

脚本

<script>
 $('#my_button').click(function() {
    setTimeout(function() {$('#myModal').modal('hide');}, 4000);
});
</script>

如果表单具有无效值,请不要设置超时:

$('#my_button').click(function() {
  if ( ! $('form input:invalid' ).length ) {
    setTimeout(function() {$('#myModal').modal('hide');}, 4000);
  }
});

请试试这个代码片段

<div class="modal-body">
    <form action="">
        <input type="number" name="rows" min="0" value="0" max="10" required><br>
        <button type="submit" id="my_button" class="btn btn-info btn-sm">Submit</button>
    </form>
</div>

<script>
 $('#my_button').click(function() {
    setTimeout(function() {$('#myModal').modal('toggle');}, 4000);
});
</script>