当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript脚本的void(0)究竟是何含义

Javascript
IE8 原生JSON支持
iframe 自适应高度[在IE6 IE7 FF下测试通过]
javascript 清除输入框中的数据
IE和FireFox(FF)中js和css的不同
JavaScript asp.net 获取当前超链接中的文本
用JavaScript页面不刷新时全选择,全删除(GridView)
JavaScript获取GridView选择的行内容
javaScript 读取和设置文档元素的样式属性
js select 控制实现代码
javascript 类方法定义还是有点区别
jQuery 绝对入门
网页开发中的容易忽略的问题 javascript HTML中的table
childNodes 用法两例
js 只能输入数字和小数点的文本框改进版
javascript 09年最新版的省市联动
jquery 实现的全选和反选
js 拖拽翻页实现代码
保证JavaScript和Asp、Php等后端程序间传值编码统一
JavaScript 无符号右移赋值操作
JavaScript 无符号右移运算符

Javascript 中的 JavaScript脚本的void(0)究竟是何含义


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-30   浏览: 466 ::
收藏到网摘: n/a

我们在 JavaScript脚本中就会经常可以看到这样的代码:

〈a href="javascript:changeNum();void(0);"〉here〈/a〉

但这儿的void(0)究竟是何含义呢?
JavaScript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值。
void 操作符用法格式如下:

1. javascript:void (e­xpression)
2. javascript:void e­xpression

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

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


  下面的代码创建了一个超级链接,用户单击时会提交表单。

<a href="javascript:void(document.form.submit())">单击此处提交表单</A>


  使用javascript的时候,通常我们会通过类似:<a href="#" onclick="javascript:方法">提交</a> 的方式,通过一个伪链接来调用javascript方法。这种方法有一个问题是:虽然点击该链接的时候不会跳转页面,但是滚动条会往上滚,解决的办法是返 回一个false。
如下所示:

<a href="#" onclick="javascript:方法;return false;">提交</a>
<a href="javascript:void(0)" onclick="javascript:方法;return false;">提交</a>
<a href="#this" onclick="javascript:方法">xx</a>


  #包含了一个位置信息默认的锚点是#top 也就是网页的上端,而javascript:void(0) 仅仅表示一个死链接。 这就是为什么有的时候页面很长浏览链接明明是#可是跳动到了页首,而javascript:void(0) 则不是如此所以调用脚本的时候最好用void(0)。

   所以我们在做页面无刷新时用void(0)比较多,一般是Ajax,看一下Ajax的web页面的话,一般都会看到有很多的void(0),所以在使用void(0)之前,最好先想一想这个页面是否需要整体刷新。