Синтаксис встроенных событий JavaScript - PullRequest
9 голосов
/ 03 февраля 2010

Есть ли причина использовать одно из следующих больше, чем другие:

<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. Это не совсем цель моего вопроса.

Ответы [ 2 ]

8 голосов
/ 03 февраля 2010

Нет никакой разницы между первыми двумя, в этой конкретной точке с запятой необязательно.

Третий предотвращает выполнение любых действий по умолчанию, а первые два - нет.

Четвертый запретит действие по умолчанию или не зависит от возвращаемого значения manageClick.

Пятый неверен.

(А там, где это возможно, используйте attachEvent / addEventListener - уток и бега )

4 голосов
/ 03 февраля 2010
<input type="button" value="b3" onclick="return manageClick(this);" />

edit Возврат предпочтителен в тех случаях, когда вы хотите контролировать поведение элемента, например, для <a> и <input type="submit">, поэтому, если предположить, что это так, то выше ваш ответ, если не просто пропустить возврат и просто идти с onclick="manageClick(this);".

Также обратите внимание на http://crisp.tweakblogs.net/blog/313/the-useless-javascript-pseudo-protocol.html относительно использования javascript:. ^ _ ^

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...