可能重复:
what is the point of void in javascript
What does “javascript:void(0)” mean?
我到处都看到javascript:void(0);
无所事事。 (我认为可以使用javascript:;
代替
那天我在页面中看到javascript:void(x=document.getElementById('mytext').value);void(document.getElementById('mylabel').innerHTML=x);
代码。
我的问题很简单,为什么无效?什么无效?
答案 0 :(得分:3)
此运算符允许插入产生副作用的表达式 到表达式为undefined的表达式 期望的。
void运算符通常仅用于获取未定义的运算符 原始值,通常使用“void(0)”(相当于“void” 0“)。在这些情况下,可以使用未定义的全局变量 (假设它尚未分配给非默认值)。
答案 1 :(得分:2)
void
是一个返回undefined
的运算符,尽管评估了以下表达式。不需要括号。
在javascript:
- url中使用它,因为任何返回值都会覆盖当前文档(如document.write()
)。
答案 2 :(得分:1)
我相信这是一种替代方法,即使在jQuery中也可以简单地终止点击。将单击处理程序附加到锚标记时,应始终在处理程序的末尾返回false -
$("#btn").on('click',function(){
// make toast
return false;
});
返回false会取消事件可能执行的任何其他操作。
当您将javasctipt:void(0)
附加到元素的onclick
时,您正在阻止该事件执行任何操作并将所有工作留给您的JavaScript。