button写在form内,不让其提交表单

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/S_clifftop/article/details/79006971

把button写在form内,只想点击时执行自己定义的方法,但为什么会提交呢?

</form>
    ……
    ……
    <button class="btn btn-success" onclick="refreshChannel()">刷新渠道</button>
</form>

当你这样写,可能你想只执行refreshChannel方法,但你点击时,页面会刷新,但url的“?”后面是空字符串,如果你进入该页面时传有一些参数,这肯定会导致一些问题的出现,因为“?”后面的参数全都没了,下面是原因及解决方法。


问题原因:type有三种类型,button,reset,submit,如果没有写type,即使写<button></button>默认的type也是"submit",而不是你以为的"button"

解决方法:

1、写在form外,再写一个div,这样怎么点都不会提交表单并刷新页面

2、只改一下type就好,所以,如果是非提交按钮,别忘写type





猜你喜欢

转载自blog.csdn.net/S_clifftop/article/details/79006971