CodeIgniter Forums

Full Version: Where do I put my javascript code?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Should I put it inside my view?

Code:
<p>Stuff...</p>
<script type="text/javascript">
alert("welcome");
</script>


Or should I use controller to load my javascript inside the view?

PHP Code:
$data = array(
 
base_url("assets/js/hello_world.js")
);
$this->load->view("index"$data); 



Then inside my view:
PHP Code:
<head>
<?
php
if (isset($js)) :
 foreach (
$js as $jv) :
 
¬†echo "<script src='" $jv "'></script>";
 endforeach;
endif;
?>
</head> 
All JavaScript code should go at the bottom of your html just above the closing body tag.

If it is needed in the html at start then it needs to go in the head section of your html.
For JS management, we use the controller to setup an array of JS files (specific for the page) and then the PHP code in the view to load up the JS. We use two arrays, one for the top of the HTML (head_js_load) and one for the bottom of the HTML (footer_js_load) to keep all of the JS on the bottom of the page if we can.

We also configure the asset folders in the config.php file (config folder) so we're not typing in assets/js (or assets/css, etc - all files have standard locations). We do have an override function when prepping the array just in case a particular JS or CSS needs to be loaded from a different location.
So to summarize, js should be put inside the view? Ok guys, thanks!