【发布时间】:2019-11-04 21:52:19
【问题描述】:
我已将此example 编码。
$(document).ready(function() {
$('form').on('submit', function(e) {
e.preventDefault();
var quantityUser = $('#quantityUser').val(); // Read the user input
var quantityW9 = $('#quantityW9').val(); //the number to compare
if (quantityUser <= quantityW9) {
this.submit();
} else {
$('#alertQuantity').modal('show');
}
});
$('#cfmContinue').click("click", function(e) {
console.log("submitttt");
$('#myform').submit();
});
});
.row {
background: #f8f9fa;
margin-top: 20px;
}
.col {
border: solid 1px #6c757d;
padding: 10px;
}
<script type="text/javascript" src="//code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<link rel="stylesheet" type="text/css" href="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<script type="text/javascript" src="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<div class="container">
<div class="row">
<form id="myform" method="post" action="https://stackoverflow.com/" role="form">
<div class="col-lg-3 my-2">
<label for="firstName">Quantity</label>
<input id="quantityUser" name="quantity" type="text" value="150" class="form-control" />
<small id="quantityW9" class="form-text text-muted">100</small>
</div>
<div class="col-1 my-2">
<button type="submit" class="btn btn-primary" autofocus>Go</button>
</div>
</form>
</div>
<div class="modal fade" id="alertQuantity" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLongTitle">Warning!</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<p>Are you sure;</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button id="cfmContinue" type="button" class="btn btn-primary">Submit</button>
</div>
</div>
</div>
</div>
</div>
在提交表单时,我进行了检查。如果此检查为真,我会向用户显示bootstrap modal 并带有一条消息。然后,用户可以继续提交表单,在模态中按下Submit 按钮。
但是,$('#myform').submit(); 不起作用并且表单未提交。
【问题讨论】:
-
而不是
this.submit,比如return true; -
@KalpashreeV.Bal 因为他防止默认而无法工作
-
@mplungjan 感谢您的评论。我在 jsfiddle 链接中有所有代码,我在问题jsfiddle.net/aewh7pbf/4 中发布了这些代码
-
@mplungjan 你是对的。很抱歉。
标签: javascript jquery bootstrap-modal form-submit