href=”#”,包含了一个位置信息.默认的锚是#top,也就是网页的上端,当连续快速点击此链接时会导致浏览器巨慢甚至崩溃。而javascript:void(0) 仅仅表示一个死链接,没有任何信息。所以调用脚本的时候最好用void(0)
href="#"与javascript:void(0)的区别
href="#"方法其实也是空连接的意思,但是点击之后会自动跳转到页面的最上面,因为用了这个方法就相当于点击了一个锚记,但是这个锚记又没写ID,所以就默认跳转到页面顶部。从上面的例子也可以看出,当要执行某些处理,但是不整体刷新页面的情况下,可以使用void(0),但是在需要对页面进行refresh的情况下,那就要仔细了。
其实我们可以这样用,这句话会进行一次submit操作。那什么情况下用void(0)比较多呢,无刷新,当然是Ajax了,看一下Ajax的web页面的话,一般都会看到有很多的void(0),所以在使用void(0)之前,最好先想一想,这个页面是否需要整体刷新。
说白了,href="#"这种形式会整体刷新页面,而href="javascript:void(0)" 则不会。所以如果是空连接的话,还是推荐javascript:void(0)。
<li th:classappend="${cur == 1} ? 'disabled' : ''">
<a th:style="${cur == 1}? 'pointer-events:none' : ''"href="javascript:void(0)" th:onclick="|loadData(${pre},${category})|">上一页</a>
</li>
<li th:classappend="${cur == last} ? 'disabled' : ''">
<a th:style="${cur== last} ? 'pointer-events:none' : ''href="javascript:void(0)" th:onclick="|loadData(${next},${category})|">下一页</a>
</li>
这里的点击上一页 下一页按钮不用刷新全部页面,也不需要跳转页面,所以使用"href="javascript:void(0)" 可以实现原地刷新