js中javascript:void(0)⽤法详解
javascript:void(0)表⽰不做任何动作。如:
复制代码代码如下:
<a href="javascript:void(0);" onclick="alert('ok');"></a>
这⾥表⽰这个链接不做跳转动作,执⾏onClick事件。
我想使⽤过ajax的都常见这样的代码:
复制代码代码如下:
<a href="javascript:doTest2();void(0);">here</a>
但这⼉的void(0)究竟是何含义呢?
Javascript中void是⼀个操作符,该操作符指定要计算⼀个表达式但是不返回值。
void 操作符⽤法格式如下:
1. javascript:void (expression)
2. javascript:void expression
expression 是⼀个要计算的 Javascript 标准的表达式。表达式外侧的圆括号是选的,但是写上去是⼀个好习惯。 (实现版本  Navigator 3.0  )
你以使⽤ void 操作符指定超级链接。表达式会被计算但是不会当前⽂档处装⼊任何内容。
下⾯的代码创建了⼀个超级链接,当⽤户以后不会发⽣任何事。当⽤户链接时,void(0) 计算为 0,但 Javascript 上没有任何效果。
javascript void 0 是什么意思复制代码代码如下:
<A HREF="javascript:void(0)">单此处什么也不会发⽣</A>
下⾯的代码创建了⼀个超级链接,⽤户单时会提交表单。
复制代码代码如下:
<A HREF="javascript:void(document.form.submit())">
单此处提交表单</A>
a href=#与 a href=javascript:void(0) 的区别链接的⼏种办法
#包含了⼀个位置信息
默认的锚是#top 也就是⽹页的上端
⽽javascript:void(0)  仅仅表⽰⼀个死链接
这就是为什么有的时候页⾯很长浏览链接明明是#是
跳动到了页⾸
⽽javascript:void(0) 则不是如此
所以调⽤脚本的时候最好⽤void(0)或者<input onclick>
<div onclick>等
链接的⼏种办法
1.window.open(''url'')
2.⽤⾃定义函数
1 2 3 4 5 6 7 8 9 10 11 12<script>
function openWin(tag,obj)
{
obj.target="_blank";
obj.href = "Web/Substation/Substation.aspx?stationno="+tag;    obj.click();
}
</script>
<a href="javascript:void(0)"onclick="openWin(3,this)">徐州</a> window.location.href=""
总结:
1 void(0)⽤于执⾏某些处理,但是不整体刷新页⾯的情况下,但是在需要对页⾯进⾏refresh的情况下,那就要仔细了。
2 其实我们可以这样⽤<a href=”javascript:void(document.form.submit())”>,这句话会进⾏⼀次submit操作。那什么情况下⽤void(0)⽐较多呢,⽆刷新,当然是Ajax了,看⼀下Ajax的web页⾯的话,⼀般都会看到有很多的void(0),:),所以在使⽤void(0)之前,最好先想⼀想,这个页⾯是否需要整体刷新
3 说⽩了,href="#"这种形式会整体刷新页⾯,⽽ href="javascript:void(0)" 则不会