Email Validation for single line text field (Email ID)

GAyathri33
Tera Contributor

Hi Team,

 

How to write catalog client script to give email validation as it can accept only @(companyname).com users only.

 

Field is a single line text field(email Id).

 

Thanks  

1 ACCEPTED SOLUTION

@GAyathri 

Not sure but that option should be there for single line text variable

If not then try to set it from List view of the variable if you don't wish to add to form layout

find_real_file.png

OR

you can create onChange client script on that variable and sample script below

UI Type - ALL

Script:

 function onChange(control, oldValue, newValue, isLoading, isTemplate) {
	if (isLoading) {
		return;
	}

	g_form.hideErrorBox('variable');

	var regex = /^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@companyname.com$/;

	newValue = newValue.toString();
	var isValidFormat = regex.test(newValue);

	if(!isValidFormat){
		g_form.showErrorBox('variable','Please enter valid email address','error');
		g_form.clearValue('variable');
	}

}

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

View solution in original post

21 REPLIES 21

Hi,

Make sure its Single line text field. If its still not there then add it from form layout.

Thank you
Prasad

@GAyathri 

Not sure but that option should be there for single line text variable

If not then try to set it from List view of the variable if you don't wish to add to form layout

find_real_file.png

OR

you can create onChange client script on that variable and sample script below

UI Type - ALL

Script:

 function onChange(control, oldValue, newValue, isLoading, isTemplate) {
	if (isLoading) {
		return;
	}

	g_form.hideErrorBox('variable');

	var regex = /^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@companyname.com$/;

	newValue = newValue.toString();
	var isValidFormat = regex.test(newValue);

	if(!isValidFormat){
		g_form.showErrorBox('variable','Please enter valid email address','error');
		g_form.clearValue('variable');
	}

}

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

@GAyathri 

I believe I have answered your question by sharing 2 working solutions.

Please close the thread by marking my response as correct and helpful so that it helps future members.

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

Hi Ankur,

 

Thank you.  your code is working as expected!

 

Thanks

Hi @ankur,

 

it's working for one email domain, what if we want to use 3 email domains?

 

Thanks.