1

可能重复:
javascript中的void有
什么意义“javascript:void(0)”是什么意思?

在任何地方我都看到这个javascript:void(0);我认为什么都不做。javascript:;(我认为可以代替这个)

那天我javascript:void(x=document.getElementById('mytext').value);void(document.getElementById('mylabel').innerHTML=x);在页面中看到了代码。

我的问题很简单,为什么无效?空有什么作用?

4

3 回答 3

3

MDN 文档页面

此运算符允许将产生副作用的表达式插入需要计算结果为 undefined 的表达式的位置。

void 运算符通常仅用于获取未定义的原始值,通常使用“void(0)”(相当于“void 0”)。在这些情况下,可以使用全局变量 undefined 代替(假设它没有被分配给非默认值)。

于 2012-09-13T19:11:57.643 回答
2

void是一个返回 的运算符undefined,尽管计算以下表达式。不需要括号。

javascript:-urls 中使用它是因为任何返回值都会覆盖当前文档(如document.write())。

于 2012-09-13T19:12:13.537 回答
1

我相信这是一种替代方法,即使在 jQuery 中也可以简单地终止点击。当您将点击处理程序附加到锚标记时,您应该始终在处理程序末尾返回 false -

$("#btn").on('click',function(){
  // make toast
  return false;
});

返回 false 会取消该事件将执行的任何其他操作。

当您将 a 附加javasctipt:void(0)onclick元素的时,您正在阻止该事件执行任何操作并将所有工作留给您的 JavaScript。

于 2012-09-13T19:16:36.517 回答