javascript:void(0) 仅仅表示一个死链接
如果是个# javascript:void(#),就会出现跳到顶部的情况,搜集了一下解决方法
1:<a href="####"></a>
2:<a href="javascript:void(0)"></a>
3:<a href="javascript:void(null)"></a>
4:<a href="#" οnclick="return false"></a>
5:<span style="cursor:hand"></span>(好像在FF中不能显示)
JavaScript中 void是一个操作符,该操作符指定要计算一个表达式但是不返回值
不整体刷新页面的情况下,可以使用void(0),但是在需要对页面进行refresh的情况下,那就要仔细了。
为什么location.href不自动跳转?慎用javascript:void(0)
<a href="javascript:void(0)" οnclick="delete('123')">删除</a>
<script>
function delete(id) {
if(confirm("确实要删除[为什么location.href不自动跳转?]吗?")) {
location.href="/delete.jsp?id=" + id;
}
}
以上代码不管如何检查都没有任何问题,而location.href="/delete.jsp?id=" + id;在别的地方都好使,为什么这段代码就行呢?
原因是那个 void(0),把代码改成:
<a href="javascript:delete('123')">删除</a>
<script>
function delete(id) {
if(confirm("确实要删除[为什么location.href不自动跳转?]吗?")) {
location.href="/delete.jsp?id=" + id;
}
}
我们发现,页面立即就跳转了,能正常删除相应的数据。
void是一个操作符,会计算一个表达式,但不会返回值,当然也不会改变当前页面的任何内容,也就不会正常的跳转