Can we give date in "single line text" field in certain format(MM-DD-YYYY) and restrict other format
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-11-2025 02:40 AM
Hello Team,
I have a requirement to have a "single line text field" in catalog form for date in which we have to enter Date in certain format(MM-DD-YYYY). There has to be an error message if the users are entering the date in different format. Please help me in achieving this.
- Labels:
-
Service Catalog
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-11-2025 03:18 AM
Hi @JuhiV
Its not recommended doing this though in case you really want it.
In my example i made a variable named "date" - single line text variable
Then make an "onChange" Client script on that variable
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
g_form.hideFieldMsg('date');
return;
}
var regex = /((0[13578]|1[02])[-]31[-](18|19|20)[0-9]{2})|((01|0[3-9]|1[1-2])[-](29|30)[-](18|19|20)[0-9]{2})|((0[1-9]|1[0-2])[-](0[1-9]|1[0-9]|2[0-8])[-](18|19|20)[0-9]{2})|((02)[-]29[-](((18|19|20)(04|08|[2468][048]|[13579][26]))|2000))/g;
if (!regex.test(newValue)) {
g_form.showFieldMsg('date', 'error in format', 'error');
}
}
Now, Its hard to maintain though the regex will check for month (1-12) - day (1-31) - year (19xx and / or 20xx)
The reason why its so complex is that February for ex doesnt have 30 or 31 days and every other month except july/august and december/january that also needs to be checked.
The same goes for leap year (every 4 year theres an extra day in february)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-11-2025 03:27 AM
I will suggest to use Data variable instead of complex scripting and validation
If my response helped please mark it correct and close the thread so that it benefits future readers.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader