背景
我有一个form
表单,里面有个button
按钮,我想点击button
按钮进行表单验证并用ajax
方式提交表单,但实际执行是点击button
按钮后会直接提交表单。
<form>
<input type="text" id="id" name="id" />
<button id="btn">查询</button>
</form>
<script>
$(document).ready(function() {
$("#btn").on('click',function() {
//表单提交
})
})
</script>
原因
html<button>
的type
属性默认值是submit
,所以点击时会默认提交表单。因此在使用<button>
时,一定要显式地指定type
属性值,避免不必要的麻烦。针对本文的问题,我们显示生命<button>
的type
属性为button
即可。
<form>
<input type="text" id="id" name="id" value="www.02405.com"/>
<!--红色部分代码显示指定type属性-->
<button type="button" id="btn">查询</button>
</form>
<script>
$(document).ready(function() {
$("#btn").on('click',function() {
//表单提交
})
})
</script>