hyper link in showFieldMsg on load client script
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
How can I add hyper link using onLoad client script and
(for example the user will see 'click here' and it will redirect to google)
My field name is: u_priferia
table name: sn_slm_case
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12 hours ago
Hi @Alon Grod
By default, ServiceNow's g_form.showFieldMsg treats text as plain string and escapes HTML tags.
OOB it is not supported.
You need to write an onLoad Client Script that pushes a placeholder message and dynamically updates the DOM element ( DOM is not recommended).
Refer for DOM onload script:
Regards
Tanushree Maiti
ServiceNow Technical Architect
LinkedIn: https://www.linkedin.com/in/tanushreemaiti
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10 hours ago
Hello @Alon Grod ,
Here it look like :
You can try this code snippet :
function onLoad() {
var fieldName = 'u_incident';
var placeholder = "##placeholder##";
var url = "https://google.com"; /
g_form.showFieldMsg(fieldName, placeholder, 'info', false);
try {
var elements = document.getElementsByClassName("fieldmsg notification notification-info");
if(elements.length > 0) {
var str = elements[0].innerHTML;
str = str.substring(0, str.indexOf(placeholder));
elements[0].innerHTML = str + 'Please <a href="' + url + '" target="_blank">click here</a> for more information.';
}
} catch(e) {
// Fallback or error handling
}
}
Note : uncheck isolated script
If this helps you then mark it as helpful and accept as solution.
Regards,
Aditya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10 hours ago
g_form.showFieldMsg doesn't support HTML so your requirement is not possible
You can inform your customer about this platform limitation and instead show infoMessage on form
Note: There are approaches to achieve this with DOM manipulation but it's not recommended to use
💡 If my response helped, please mark it as correct ✅ and close the thread 🔒— this helps future readers find the solution faster! 🙏
Ankur
✨ Certified Technical Architect || ✨ 10x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
8 hours ago - last edited 8 hours ago
Hey @Alon Grod
You can achieve this using DOM manipulation from an onLoad Client Script.
function onLoad() {
g_form.showFieldMsg('u_priferia', 'Click here', 'info');
setTimeout(function() {
var msgs = document.querySelectorAll('.fieldmsg');
msgs.forEach(function(msg) {
if (msg.innerText.indexOf('Click here') > -1) {
msg.innerHTML = '<a href="https://www.google.com" target="_blank">Click here</a>';
}
});
}, 1000);
}
Important: Make sure Isolate Script is unchecked on the Client Script, otherwise DOM APIs such as document.querySelectorAll() will not be accessible.
Note: Direct DOM manipulation is generally not recommended in ServiceNow because DOM elements and CSS classes can change across releases, which may cause scripts to break after upgrades. Where possible, consider supported alternatives such as UI Macros, Formatters, HTML fields, or Workspace components depending on your use case.
***********************************************************************************************************************************
If this response helps, please mark it as Accept as Solution and Helpful.
Doing so helps others in the community and encourages me to keep contributing.
Regards
Vaishali Singh
Servicenow Developer
Linkedin - https://www.linkedin.com/in/vaishali-singh-2273361bb