Get a first look at what's coming. The Developer Passport Australia Release Preview kicks off March 12. Dive in! 

Return False is not working in onsubmit client script

akhila13
Tera Expert

In the below script return false is not working.Can anyone help me

 

 

function onSubmit() {
var ga = new GlideAjax('IncidentAssignmentGroup');
ga.addParam('sysparm_name', 'canResolveIncident');
ga.addParam('sysparm_state', g_form.getValue('state'));
ga.addParam('sysparm_group', g_form.getValue('assignment_group'))
ga.getXML(setState);
function setState(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
g_form.addInfoMessage(answer);
// g_form.addErrorMessage("test");
//retrun false;
if (answer == 'Cannot Resolve') {
g_form.addErrorMessage("Cannot change the state to resolved");
return false;
}

 


}
}

1 ACCEPTED SOLUTION

I got the issue  the function should close after if, try below:

if (g_scratchpad.isFormValid) {
return true;
}

var actionName = g_form.getActionName();
var ga = new GlideAjax('IncidentAssignmentGroup');
ga.addParam('sysparm_name', 'canResolveIncident');
ga.addParam('sysparm_state', g_form.getValue('state'));
ga.addParam('sysparm_group', g_form.getValue('assignment_group'))
ga.getXML(setState);
function setState(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
g_form.addInfoMessage(answer);
// g_form.addErrorMessage("test");
//retrun false;
if (answer != 'Cannot Resolve') {

g_scratchpad.isFormValid = true;
g_form.submit(actionName);
}

}
g_form.addErrorMessage("Cannot change the state to resolved");
return false;

 

View solution in original post

9 REPLIES 9

Hi Raghav,

 

 

I modified the code. Still not working 😞

 

function onSubmit() {


if (g_scratchpad.isFormValid) {
return true;
}

var actionName = g_form.getActionName();
var ga = new GlideAjax('IncidentAssignmentGroup');
ga.addParam('sysparm_name', 'canResolveIncident');
ga.addParam('sysparm_state', g_form.getValue('state'));
ga.addParam('sysparm_group', g_form.getValue('assignment_group'))
ga.getXML(setState);
function setState(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
g_form.addInfoMessage(answer);
if (answer == 'Cannot Resolve') {
g_form.addErrorMessage("Cannot change the state to resolved");
return false;
}
else {
g_scratchpad.isFormValid = true;
g_form.submit(actionName);
}

}
}

can you alert(answer); and check if you are getting correct value?

Also try:

 

if (answer != 'Cannot Resolve') {

g_scratchpad.isFormValid = true;
g_form.submit();
}
else {
g_form.addErrorMessage("Cannot change the state to resolved");
return false;
}

The error message is coming correctly . But the form is getting saved

I got the issue  the function should close after if, try below:

if (g_scratchpad.isFormValid) {
return true;
}

var actionName = g_form.getActionName();
var ga = new GlideAjax('IncidentAssignmentGroup');
ga.addParam('sysparm_name', 'canResolveIncident');
ga.addParam('sysparm_state', g_form.getValue('state'));
ga.addParam('sysparm_group', g_form.getValue('assignment_group'))
ga.getXML(setState);
function setState(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
g_form.addInfoMessage(answer);
// g_form.addErrorMessage("test");
//retrun false;
if (answer != 'Cannot Resolve') {

g_scratchpad.isFormValid = true;
g_form.submit(actionName);
}

}
g_form.addErrorMessage("Cannot change the state to resolved");
return false;

 

it works.. Thanks a lot Raghav...