how to prevent submit with error message?

Akki1
Tera Contributor

i'm using a client script with the below code. I want to popup a error message and prevent submit if my output is false;

var output='';

var req=g_user,userName;

var ent=g_form,getValue('gp_name);

var acc=new GlideAjax('global.app_validate');

acc.addParam(sysparm_name,'validate');

acc.addParam('gp',ent);

acc.addParam('user',req);

acc.getXMLAnswer(function(response){

output=response;

}

 

 

6 REPLIES 6

Community Alums
Not applicable

Hello @Akki1 

 

In onsubmit client script, Async validation doesn't work correctly, since  "GlideAjax.getXMLWait is no longer supported" for onsubmit client script. Refer below articles for alternative ways to achieve this - 

https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB0783579 

https://www.servicenow.com/community/developer-articles/async-validation-in-onsubmit-catalog-client-... 

 

Regards,

Akshay

@Community Alums I saw the reference article

I didn't understand what exactly is being done in below code ?can you explain? Thanks

 function callBack(answer) {
        if (answer == 'false') {
            g_form.showFieldMsg('user', 'This user is not a member of Testing group.', 'error', true);
        } else {
			//alert('2 ' + g_scratchpad.isGroupMember);
            g_scratchpad.isGroupMember = true;
			//alert('3 ' + g_scratchpad.isGroupMember);
            g_form.submit(actionName);
			//alert('4 ' + g_scratchpad.isGroupMember);
            g_scratchpad.isGroupMember = false;
			//alert('5 ' + g_scratchpad.isGroupMember);
        }
    }

Sagar Pagar
Tera Patron

Hi @Akki1,

Try this updated scripts -

var req = g_user.userName;
var ent = g_form.getValue('gp_name');

var acc = new GlideAjax('global.app_validate');
acc.addParam(sysparm_name, 'validate');
acc.addParam('gp', ent);
acc.addParam('user', req);
acc.getXMLAnswer(_callBackFunction);

function _callBackFunction(response) {
	var answer = response;

	if (answer == "false") {
		g_form.addErrorMessage("Add error message here");
		return false;
	}

}

 

Thanks,
Sagar Pagar

The world works with ServiceNow

@Sagar Pagar  I'm getting the error message but its still submitting the request