Почему этот код JavaScript (встроенный как атрибут HTML) не работает? - PullRequest
0 голосов
/ 23 октября 2011

Почему это не работает?

<button onclick = "function(){alert('Hello');}">press me</button>

пока это происходит:

<button onclick = "alert('Hello');">press me</button>

Ответы [ 2 ]

6 голосов
/ 23 октября 2011

Они оба работают.Первый определяет функцию, но не вызывает ее.Второй фактически вызывает alert.

Если вы пытаетесь определить и вызвать анонимную функцию, попробуйте это:

<button onclick = "(function(){alert('Hello');})()">press me</button>
2 голосов
/ 23 октября 2011

Поскольку вы не вызываете функцию - вы ее определяете.

Я не знаю, почему вы хотели бы , но вы могли бы написать это:

<button onclick="(function() { alert('Hello'); })()">press me</button>
...