Is there a rails equivalent of <body onload="do_stuff()">

Hi,

I want to call a javascript function after my page has loaded.
Currently I am using:
<body onload="do_stuff()">
Is there a neater / tidier way to do this using any rails specific
commands?

I found this:

document.observe('dom:loaded', function() {
$('state_field').hide();
$('person_country_id').observe('change', countrySelected);
});

which is part of a tutorial for creating dynamic drop down menus, but
when I, for example, try:

document.observe('dom:loaded', function() {
alert('hello');
});

this has no effect, rather it is output as html, as though I had witten
<p>document.observe('dom:loaded', function() {alert('hello');});</p>

Grateful for any help.

Sorry, I forgot the <script> tags.
Now eveything works.
Forget I spoke :slight_smile:

Excellent! Now take the JS out of the HTML and put it in an external
file.

Cool, that works.
Thanks a lot.

You might want to have a look at Low Pro

http://www.danwebb.net/2006/9/3/low-pro-unobtrusive-scripting-for-prototype

It was built for prototype, but there's a version for use with jquery as well
http://www.danwebb.net/2008/2/3/how-to-use-low-pro-for-jquery

Although I haven't used that.