[SalesForce] How to execute JavaScript on a SFDC Standard Detail Page

*NOTE: This is not feasible as of the latest SFDC Releases. *

I have a requirement to execute some JavaScript on a SFDC Standard Detail page.

Specifically we would like to remove the ability for the users to add Notes to an object, but still retain the ability to add Attachments.

You cannot remove the button from the Notes & Attachments related list via standard declrative features (Page Layouts, etc). We would like to remove the "New Note" button, as well as rename the Related List to "Attachments".

I know I could do this in JavaScript by editing the DOM. Is there a way I can run JavaScript in a standard SFDC detail page?

Best Answer

The only way we found to insert code directly into the DOM of any Salesforce page is via a Home Page Component (Setup > Customize > Home > Home Page Components).

Create a New Custom Component, Type = HTML Area. In the editor, check the "Show HTML" checkbox in the upper right. You can then put in arbitrary HTML and JavaScript and it can traverse the DOM.

If you just want your code on a single page, create a "Wide (Right) Column" component and add it to your page layout.

If you want the code to run on every* page in SFDC, then you'll want to put it into a "Narrow (Left) Column" (often referred to as the sidebar) component, check the Setup > Customize > User Interface > Show Custom Sidebar Components on All Pages checkbox, and finally select it in Setup > Customize > Home > Home Page Layouts > your layout.

Home Page Components don't need to have any visible UI.

  • Chatter pages don't have the sidebar, so this won't work there. The Service Cloud Console also doesn't show the sidebar and has no equivalent, so you can't do this there either.
Related Topic