我在js 下随便写了一个函数如下
 function test()
{
  var flag;
  flag=1;
  if(flag)
  alert(" this is a test");
  return 0;
}
在html页面写了两个按钮,点击按钮时调用这个函数
<input type="Button" name=" click me"  value="click me" onClick="test()"><input type="Button" name="click me again" value="click me again" onClick="return test() ">
我想搞明白的是吗,上面两个按钮的点击事件 onClick="test()" 与 onClick="return test()" 有什么区别? 分别用于什么样的情况。希望大家能给予详细的解答。

解决方案 »

  1.   

    <input type="Button" name=" click me"  value="click me" onClick="test()"><input type="Button" name="click me again" value="click me again" onClick="return test() ">
    要详细了解两者的区别,LZ需要了解DOM事件冒泡原理之类的东东。
    简单地说,两者的区别:
    对于(1):因为onClick事件处理没有定义返回值,缺省会返回true,返回true会导致浏览器不阻止事件冒泡处理,或者说不会阻止浏览器的缺省行为。
    对于(2):事件处理定义了返回,会根据test()函数的返回值来决定事件是否冒泡处理。结果返回false,会阻止事件的冒泡处理,也会阻止浏览器的缺省行为。
      

  2.   

    return test()    通常用在表单提交是 返回false不提交返回ture提交