shishaomeng

让一切触手可及!
posts - 0, comments - 0, trackbacks - 0, articles - 19
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

javascript onclick return false

Posted on 2009-04-14 08:55 时邵猛 阅读(2000) 评论(0)  编辑  收藏 所属分类: javascript

在HTML代码中,无论你在哪里放置了onclick事件,并且返回值为false时,那么该处的默认行为将不会执行。这里的默认行为是指没有Onclick事件时原本的行为。

 

举一个例子:

 

Js代码 复制代码
  1. <a href="http://www.nojs.com" onclick="doSomething(); return false;">Click Me</a>  

在上面的例子中,如上面所说点击(click)这个链接,那么动作进行将会截止到doSomething()函数全部完成,而并不会继续跳转到"http://www.nojs.com"(除非IE等浏览器端禁用了JavaScript)。

 

为了让上面的例子继续进行下一步,我们可以放置一个confirm函数强迫用户去决定他们是否愿意继续跳转,如果用户选择“是”,那么函数返回ture,页面跳转到“http://www.nojs.com”。

如下面这个例子:

Js代码 复制代码
  1. <a href="http://www.nojs.com" onclick="return confirm('Are you sure you want to do that?');">Click Me</a>  

 

最后还有个小技巧,当我用AJAX或触发一个div时,出现了一个让我恼火的情况,我点击了链接并且click事件已经完成,虽然链接没有跳转但还是变成了还是被选中过的颜色。虽然这无关紧要,但还是有一个办法可以不让这个发生,简单的说,可以模糊(blur)这个焦点让他看上去不是焦点

 

来看一个简单的例子:

Js代码 复制代码
  1. <a href="" id="bjd" onclick="Element.toggle('MyDiv'); $('bjd').blur(); return false;">Toggle MyDiv</a>  

 在上面这个例子里使用了prototype,如果你不了解prototype,你可以访问这个链接来了解一下Prototype

 

原文地址

http://www.bradino.com/javascript/onclick-return-false/