onclick="javascript:return delete()"
这是错误的。
href="javascript:delete();void(0)"
这才是正确的。
onclick="delete()"
这个是触发click事件的时候执行delete()
href="javascript:return delete()"
这是个连接,在地址栏输入的时候, 会被浏览器识别成javascript并执行"javascript:"之后的内容。这里直接return是会报错的,因为return只能在函数中使用。当然onclick中可以使用,因为他是个函数,别被眼睛骗了。
在用href的时候最后最好跟着";undefined"(上面的void(0)是undefined的简写)
因为如果最后执行的语句返回的不是undefined的话,有些浏览器会直接将结果显示在窗口中,替换掉原来的内容。
当然如果是onclick="return delete()"的话,那就是将delete()的结果返回给onclick事件,相当于document.getElementById('xxxx').onclick = function() { return delete(); }
可以认为没区别
硬要说的话
第一种更简短
第二种强制指定使用JS并且也可以写到href中