日期:2014-05-16  浏览次数:20399 次

a href="javascript:void(0);"用法

用法简介:

?

<a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP

<a href="javascript:void(0)" onClick="window.open()"> 点击链接后,页面不动,只打开链接

<a href="#" onclick="javascript:return false;"> 作用同上,不同浏览器会有差异。

点击链接后,不想使页面滚到页首,就用href="javascript:void(0)",不要用href="#",return false也有类似作用。

<a href=”javaScript:void(0)” onClick=”doSomething();”>doSomething</a>  

?

?

void 操作符用法格式如下:

?

javascript:void (expression)  
javascript:void expression  

?

expression 是一个要计算的 JavaScript 标准的表达式。表达式外侧的圆括号是可选的,但是写上去是一个好习惯。我们可以使用 void 操作符指定超级链接。表达式会被计算但是不会在当前文档处装入任何内容。下面的代码创建了一个超级链接,当用户点击以后不会发生任何事。当用户点击链接 时,void(0) 计算为 0,但在 JavaScript 上没有任何效果。

?

<a href=”javascript:void(0)”>单击此处什么也不会发生</a>  
?

也就是说,要执行某些处理,但是不整体刷新页面的情况下,可以使用void(0),但是在需要对页面进行refresh的情况下,那就要仔细了。

?

<a href=”javascript:void(document.form.submit())”>  

?

其实我们可以用上面的代码,这句话会进行一次submit操作。那什么情况下用void(0)比较多呢,无刷新,当然是Ajax了,看一下Ajax的web 页面的话,一般都会看到有很多的void(0), 所以在使用void(0)之前,最好先想一想,这个页面是否需要整体刷新。

?

<script type="text/javascript">     
    function goUrl(x){     
        window.location.href=x;     
    }     
</script>     
  
<a href="javascript:;" onclick="javascript:goUrl('http://www.sina.com.cn');">跳转1</a>  
     
<a href="javascript:void(0);" onclick="javascript:goUrl('http://www.sina.com.cn');">跳转2</a>  
     
<a href="javascript:void(0);" onclick="javascript:goUrl('http://www.sina.com.cn');return false;">跳转3</a>     
  
<a href="#" onclick="javascript:goUrl('http://www.sina.com.cn');">跳转4</a>     
  
<a href="###" onclick="javascript:goUrl('http://www.sina.com.cn');">跳转5</a>  

?

以下为项目中的实际应用:跳转时还要把参数据带过去。

?

//附件下载跳转 $(".a_upload").click(function(){
//window.open($(this).attr("openLink"));
window.location.href=$(this).attr("openLink"); return false; });
<td class="f_msLink">
	<a class="a_upload" href="javascript:void(0);"
		openLink="<%=basePath%>/include/do_upload.jsp?f_id=<%=s.getf_id()%>&f_tableName=<%=f_tableName%>&f_fieldName=<%=f_fieldName%>"><%=s.getf_msLink()==null?"":fn.oa_split1(s.getf_msLink())%></a>

</td>
?