<a/>中href和onclick的区别
onclick
?事件被先执行,其次是?href
?属性下的动作(页面跳转,或 javascript 伪链接);href
?与?onclick
,如果想让?href
?属性下的动作不执行,onclick
?必须得到一个?false
?的返回值。onclick
?事件执行操作。应将它的?href
?属性设为?javascript:void(0);
,而不要是?#
,这可以防止不必要的页面跳动;href
?属性中调用一个有返回值的函数,当前页面的内容将被此函数的返回值代替;<html><head><script type="text/javascript"><!--function handler1(arg1){alert(arg1);}--></script></head><body><table width="155"><tr><td><div style="height:195;width:157px;overflow:auto;border:1px solid #999999;"> <table width="155" border="0" cellspacing="0" cellpadding="0" id="dataTable"><tr><a onclick="javascript:handler1('%22%5b%40', 'Y', 'N', 'SAM Report');">TEST</a>.</tr><tr><a href="javascript:handler1('%22%5b%40', 'Y', 'N', 'SAM Report');">TEST1</a></tr> </table></div></td></tr></table></body></html>
?
综上所述,当a需要支持JS时比较推荐写法为
<a href="javascript:void(0);" onclick="javascript:fn(this);">