How to get div onblur event to execute a javascript function?

Vamsi picture Vamsi · Jan 31, 2011 · Viewed 39.6k times · Source

Hi I have a div that contains three textboxes , i need a function to be called once the control is out of the div tag, I don't want to use the onclick event because the focus can be moved out of the div by pressing the tab key on the keyboard or some other way. I would also like to know if there is a way to achieve this using any javascript libraries like jquery.

Thank you, this is the sample html code

<html>
<head>
    <title>Div Onblur test</title>

    <script type="text/javascript">
        function Callme() {
            alert("I am Called")
        }
    </script>

</head>
<body>
    <div onblur="javascript:Callme();">
        <input type=text value ="Inside DIV 1" />
        <input type=text value ="Inside DIV 2" />
        <input type=text value ="Inside DIV 3" />
    </div>
     <input type=text value ="Outside DIV" />
</body>
</html>

Answer

Bitsplitter picture Bitsplitter · Jan 31, 2011

You'll need to add tabindex=0 to the div in order for it to gain focus. So something like

<div tabindex="-1" onblur="Callme();">

should do it.