How to Remove escape characters from javascript variable used inside script tag.

Ravish Rawat
ServiceNow Employee
ServiceNow Employee

i have a ui page in the html section of that ui page i am using an evaluate tag

<g:evaluate var="jvar_doc_content" object="true" expression="
var doc_content = JSON.stringify(new DocXDataProvider('08a81416db43134077d256d4ce9619b1').getDocumentJSON());
gs.info(doc_content);
doc_content;"

Now the variable - jvar_doc_content contains json value something like {"date":"2018-07-04 03:24:41","name":"xyz"}

The problem is that when i am using the variable inside jelly script tag(mentioned at last) the json is coming as 

{\"date\":\"2018-07-04 03:24:41\",\"name\":\"xyz\"} instead of  {"date":"2018-07-04 03:24:41","name":"xyz"}

Script tag

 

<script>
doc.setData(${jvar_doc_content});

</script>

10 REPLIES 10

Ravish Rawat
ServiceNow Employee
ServiceNow Employee

replace(/[^\w\s]/gi, '') this is working but it replacing all the special character as well.

can you try with this 

replace(/\\/g, '');

this doesnt work

its working make sure  you have used  JSON.stringify

 

find_real_file.png

 

OUTPUT:

 

find_real_file.png

i am adding the regex in below code before passing it to script tag

 

<g:evaluate var="jvar_doc_content" object="true" expression="
var doc_content = JSON.stringify(new DocXDataProvider('08a81416db43134077d256d4ce9619b1').getDocumentJSON()); 
doc_content.replace(/\\/g, '');"