# javascript code execution on all pages except one.

**URL:** <https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396>\
**Category:** rubyonrails-talk\
**Created:** [December 22, 2010, 3:56pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396 "2010-12-22T15:56:23Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mauro](https://avatars.discourse-cdn.com/v4/letter/m/45deac/32.png) [@Mauro](https://discuss.rubyonrails.org/u/Mauro)\
**Post date:** [December 22, 2010, 3:56pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/1 "2010-12-22T15:56:23Z")

</div>

For all my applicatino I use layout A. In this layout I have \<%= javascript\_include\_tag 'application.js' %\> and, in this javascript I have some code that I want to execute on all pages exept one. How can I exclude this javascript only for one page?

---

<div class="post-metadata">

**Author:** ![Colin\_Law1](https://avatars.discourse-cdn.com/v4/letter/c/91b2a8/32.png) [@Colin\_Law1](https://discuss.rubyonrails.org/u/Colin_Law1)\
**Post date:** [December 22, 2010, 4:22pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/2 "2010-12-22T16:22:25Z")

</div>

You could extract that code to a separate .js file and have a separate layout for that page that does not include the new js file.

Colin

---

<div class="post-metadata">

**Author:** ![Mauro](https://avatars.discourse-cdn.com/v4/letter/m/45deac/32.png) [@Mauro](https://discuss.rubyonrails.org/u/Mauro)\
**Post date:** [December 22, 2010, 4:24pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/3 "2010-12-22T16:24:09Z")

</div>

But I have to duplicate the layout code only to not include a .js? All the pages have the same layout.

---

<div class="post-metadata">

**Author:** ![Colin\_Law1](https://avatars.discourse-cdn.com/v4/letter/c/91b2a8/32.png) [@Colin\_Law1](https://discuss.rubyonrails.org/u/Colin_Law1)\
**Post date:** [December 22, 2010, 4:28pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/4 "2010-12-22T16:28:30Z")

</div>

Put all the common stuff in a separate file or files and yield to it/them from the layouts.

Colin

---

<div class="post-metadata">

**Author:** ![Frederick\_Cheung](https://sea2.discourse-cdn.com/rubyonrails/user_avatar/discuss.rubyonrails.org/frederick_cheung/32/3901_2.png) [@Frederick\_Cheung](https://discuss.rubyonrails.org/u/Frederick_Cheung)\
**Post date:** [December 22, 2010, 4:29pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/5 "2010-12-22T16:29:17Z")

</div>

You could stick \<%= yield :extra\_js %\> in the head section of the layout and then use content\_for :extra\_js with the include for the extra javascript file

Fred

---

<div class="post-metadata">

**Author:** ![Mauro](https://avatars.discourse-cdn.com/v4/letter/m/45deac/32.png) [@Mauro](https://discuss.rubyonrails.org/u/Mauro)\
**Post date:** [December 22, 2010, 4:31pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/6 "2010-12-22T16:31:05Z")

</div>

Yes that's a solution, thank you.

---

<div class="post-metadata">

**Author:** ![Mauro](https://avatars.discourse-cdn.com/v4/letter/m/45deac/32.png) [@Mauro](https://discuss.rubyonrails.org/u/Mauro)\
**Post date:** [December 22, 2010, 7:37pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/7 "2010-12-22T19:37:05Z")

</div>

Can I use content\_for in a partial too?

---

<div class="post-metadata">

**Author:** ![E\_Litwin](https://avatars.discourse-cdn.com/v4/letter/e/838e76/32.png) [@E\_Litwin](https://discuss.rubyonrails.org/u/E_Litwin)\
**Post date:** [December 22, 2010, 7:58pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/8 "2010-12-22T19:58:35Z")

</div>

Are you asking because you tried it and it didn't work?

I don't see anything in the documentation that indicates it would NOT work in a partial.

---

<div class="post-metadata">

**Author:** ![Garrett\_Lancaster](https://avatars.discourse-cdn.com/v4/letter/g/dbc845/32.png) [@Garrett\_Lancaster](https://discuss.rubyonrails.org/u/Garrett_Lancaster)\
**Post date:** [December 22, 2010, 8:26pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/9 "2010-12-22T20:26:53Z")

</div>

It should work in partials, but will not work if you are rendering the partial in an ajax call

---

<div class="post-metadata">

**Author:** ![Mauro](https://avatars.discourse-cdn.com/v4/letter/m/45deac/32.png) [@Mauro](https://discuss.rubyonrails.org/u/Mauro)\
**Post date:** [December 22, 2010, 9:28pm UTC](https://discuss.rubyonrails.org/t/javascript-code-execution-on-all-pages-except-one/56396/10 "2010-12-22T21:28:20Z")

</div>

Yes
