Shadow text for servicenow forms

tkrishna29
Giga Guru

Hi,

How can I add shadow text for ServiceNow forms? I dont see any option to add it in the Studio - Forms.

I'm looking for something like this (In the text filed - "Optional - Enter Phone No").

find_real_file.png

Any workaround or help is highly appreciated Thank you.

find_real_file.png

1 ACCEPTED SOLUTION

By default, ServiceNow blocks updating DOM objects in scoped applications.


You need to add below system property and set it to false.


glide.script.block.client.globals


screenshot-troweermdev.service-now.com 2017-04-13 23-21-00.png



and use below function to set placeholder text in on load script.


u_addPlaceholderAttribute('field_name', 'YYYY-MM-DD');


function u_addPlaceholderAttribute(variableName, hint) {


  var fieldName;


  try{


  if(variableName.indexOf('phone') >= 0)


  {


  fieldName = g_form.getControl(variableName).name.toString();


  fieldName = 'disp_'+fieldName;


  }


  else{


  fieldName = g_form.getControl(variableName).name.toString();


  }


       


      if (Prototype.Browser.IE) {  


          fieldName.placeholder = hint;  


      } else {  


          $(fieldName).writeAttribute('placeholder', hint);  


      }  


  } catch(err) {}  


}


View solution in original post

16 REPLIES 16

Hello Jim,


additional_info field is of type String.


ServiceNow version is Helsinki.


I'm using windows 10, Chrome / IE browser. I tried with info messages as well.


find_real_file.png


Here is what I see: (It's displaying the before placeholder text message). But not the one after that. I believe it is somehow erring out at that step.


find_real_file.png


find_real_file.png


Checked client log -


find_real_file.png


No clue why it didn't execute the next 2 statements.



Regards,


Krishna


Silly question - are there any spaces in the "Additional info" field text box?   Maybe the field is not truly empty and so the placeholder text is not visible?   What happens when you create a new record?



If you are able to take a look at the source HTML code (with whatever tool), can you see the placeholder attribute/text?


find_real_file.png



What happens when you replace your line 12 with the following (don't leave that in your production code though):



} catch(err) {


  alert(err.toString());


}


Hi Jim,



That wouldn't be the case about having space. Because, it didn't run the next info message stmt after the placeholder statement.


Here is the alert message I got when I put it in catch statement.



find_real_file.png


Does it work if you use $$ instead?


try $j ?