我正在使用Bootstrap进行设计和表单验证。
使用JavaScript / jQuery动态更改表单操作时遇到问题。提交按钮后,没有任何反应,提交按钮被禁用。
这是我的jQuery代码:
$('.btnSaveQuery').on('click', function(){
$('#formId').attr('action', 'saveQuery').submit();
});
这是我的HTML表单代码:
<form id="formId" method="POST" class="form-horizontal">
<div class="form-group">
<div class="col-sm-4">
<input name="name" class="form-control" placeholder="name" />
</div>
<div class="col-sm-4">
<input name="description" class='form-control'
placeholder="description" required autofocus />
</div>
</div>
<div class="form-group">
<div class="col-sm-9 col-sm-offset-3">
<button type="submit" class="btn btn-success btnSaveQuery">Save</button>
</div>
</div>
</form>
答案 0 :(得分:2)
请在代码中使用return false
$(".btnSaveQuery").on('click', function() {
$('#formId').attr("action", "saveQuery")
});
答案 1 :(得分:2)
修复它的多种方法。要么不使用type="submit"
,要么不通过代码提交。表格实际上是默认提交的。
你可以这样做
<button class="btn btn-success btnSaveQuery" onclick="submitForm()">Save</button>
<script>
function submitForm()
{
$('#formId').attr('action', 'saveQuery').submit();
}
</script>
或者在提交之前更改操作...例如页面加载..
------------- 或强> ---------------
我没有经过测试,但是可能会根据您的意愿为您提供服务
$(".btnSaveQuery").on('click', function() {
$('#formId').attr("action", "saveQuery");// do not submit. Its done by default
});
注意:确保saveQuery(url)应该存在