Expand my Community achievements bar.

SOLVED

Is it possible to add javascript in rte? If yes, then how?

Avatar

Community Advisor

There are some community articles that show use of RTE and script - see this as an example: 

http://experience-aem.blogspot.ca/2015/01/aem-6-sp1-touch-ui-rich-text-editor-plugin-to-upper-case.h...

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hey,

In classic UI ,you can use Xtype htmleditor instead of rte if you want to write js. It won't remove the script tag. But for touch UI , I don't see any resourceType for that.

Hope it helps!

Thanks

Nupur

View solution in original post

11 Replies

Avatar

Level 4

Hi, Himanshu.

I haven't tried that before...

Is the RTE removing the <script> content or are you having a hard time trying to render it?
Are you able to see the <script> tag in the corresponding node under your page (CRX DE)?

Regards,

Daniel.

Avatar

Community Advisor

Rte is removing <script> tag.

Avatar

Administrator

There is one more article where custom color picker is implemented:

Link:- http://experience-aem.blogspot.in/2016/04/aem-62-touch-ui-dialog-rte-rich-text-editor-color-picker-p...

Link:- http://experience-aem.blogspot.in/2016/04/aem-62-touchui-dialog-rte-mini-rte-upper-case-plugin.html

//Please try it and let us know, what is the problem that you are facing. Please have a look at the articles here you can see that, we have created a clientlibs folder with categories =  rte.coralui2

  now create a JS file and add plugin code in it. 

~kautuk



Kautuk Sahni

Avatar

Level 2

Hi Himanshu,

Could you explain a little more about the requirement which requires author to place a code(<script>), because this doesn't look like a good practice? If the content has to be beautified or modified for some reasons, it can always be done in the component's script (sightly or JSP). Further if you still have such a requirement to do, you may try:

WhitespaceProcessor.js is restricting few tags by default, you might update this to ignore the tags you want.

You could refer this post for more help:

http://help-forums.adobe.com/content/adobeforums/en/experience-manager-forum/adobe-experience-manage...

Avatar

Correct answer by
Community Advisor

Hey,

In classic UI ,you can use Xtype htmleditor instead of rte if you want to write js. It won't remove the script tag. But for touch UI , I don't see any resourceType for that.

Hope it helps!

Thanks

Nupur

Avatar

Level 2

How can we remove .html extension from the rte at content fragment level?

Avatar

Community Advisor

nupurjain wrote...

Hey,

In classic UI ,you can use Xtype htmleditor instead of rte if you want to write js. It won't remove the script tag. But for touch UI , I don't see any resourceType for that.

Hope it helps!

Thanks

Nupur

 

Thanks Nupur!
But, the requirements was for Touch UI. For foundation/components/text, we can override WhiteSpaceProcessor.js to allow tags. Then, <script> tag can be used in RTE by keeping it wrapped under <div> tags.

Avatar

Community Advisor

vinayk70574604 wrote...

Hi Himanshu,

Could you explain a little more about the requirement which requires author to place a code(<script>), because this doesn't look like a good practice? If the content has to be beautified or modified for some reasons, it can always be done in the component's script (sightly or JSP). Further if you still have such a requirement to do, you may try:

WhitespaceProcessor.js is restricting few tags by default, you might update this to ignore the tags you want.

You could refer this post for more help:

http://help-forums.adobe.com/content/adobeforums/en/experience-manager-forum/adobe-experience-manage...

 

Thanks Vinayak,

I've made changes in WhitespaceProcessor.js for foundation/components/text and it's now taking <script> tag if wrapped b/w <div> tags.

Avatar

Level 2

I have removed the script tag from whitespaceprocessor.js but to no avail, script tag is still getting stripped off.

Could you please let me know what changes you have made in whitespaceprocessor.js ?

Avatar

Employee Advisor

Don't let an author enter Javascript as part of the page. You are opening the box of pandora then, and authors start embedding stuff you never dreamed of. Not to mention security issues.

Please, don't.