Есть ли любая причина использовать один из следующих больше, чем другие:
<input type="button" value="b1" onclick="manageClick(this)" />
<input type="button" value="b2" onclick="manageClick(this);" />
<input type="button" value="b2" onclick="manageClick(this);return false;" />
<input type="button" value="b3" onclick="return manageClick(this);" />
<input type="button" value="b4" onclick="javascript:return manageClick(this);" />
И не тратьте свое драгоценное время, чтобы сказать мне использовать jQuery или attachEvent
/addEventListener
. Это не действительно цель моего вопроса.
Между первыми двумя нет никакой разницы, в этой специфической ситуации точка с запятой является необязательной.
Третья предотвратит любое действие по умолчанию, которое не произойдет в первых двух.
Четвертое предотвратит действие по умолчанию или нет в зависимости от возвращаемого значения параметра manageClick
.
Пятое действие неверно.
(И везде, где это уместно, используйте attachEvent
/addEventListener
-- duck and runs)
<input type="button" value="b3" onclick="return manageClick(this);" />
edit Return предпочтительнее в случаях, когда вы хотите контролировать поведение элементов, например, для и
, так что если предположить, что это так, то выше приведен ваш ответ, если не пропустить возврат и просто перейти к
click="managementClick(this);"
.
Также посмотрите на http://crisp.tweakblogs.net/blog/313/the-useless-javascript-pseudo-protocol.html относительно использования javascript:
. ^_^