Web Foundations

onclick (HTML Attribute)

By Ophelie Lechat


onclick event handler captures a click event from
the users’ mouse button on the element to which the
onclick attribute is applied. This action usually
results in a call to a script method such as a JavaScript function, like

However, it can
also be used to run a script in situ:

onclick="alert('You are clicking on me');"

Note that this event attribute cannot be applied to the following elements:

  • applet
  • base
  • basefont
  • bdo
  • br
  • font
  • frame
  • frameset
  • head
  • html
  • iframe
  • isindex
  • meta
  • param
  • script
  • style
  • title


Clicking anywhere on the
div below will call a function, defined elsewhere,
called showStats():

<div onclick="showStats();">Figures for February’s racing.</div>


This attribute has no fixed value.
It’s up to the author to decide on the scripting that’s included here, be
that a call to one or more defined functions, or a simple
alert() statement.

However, the likely values will be similar to


could also specify a value like this:


may also use a value like this:

onclick="alert('Hello world');window.close();"

that you can string several functions together, separating them with a
semicolon, as shown in the second and third examples


Internet Explorer Firefox Safari Opera
5.5 6.0 7.0 1.0 1.5 2.0 1.3 2.0 3.0 9.2 9.5
Full Full Full Full Full Full Full Full Full Full Full

Every browser listed supports this
attribute. However, inline event handlers such as this should be avoided.
In the same way that inline CSS styles are frowned upon but externally
defined CSS styles are considered good practice, inline event handlers
should be stripped out and replaced with events attached unobtrusively
through the DOM.

  • Sara Melad

    function fire without click please need help i use call function_php in button

    • Rajesh Wellington

      you can use onload()