Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

How to pass multiple values from client script to script include

Hari1
Mega Sage

Hi,

I am not able to pass multiple values from script include to client script.

Can anyone please help me out on below code?

REF::

Client Script:

var gr = new GlideAjax('ChangeState');  
gr.addParam('sysparm_name','stateFieldValue');
gr.addParam('sysparm_sys_id',getSysId); //getSysId is the sys-id of the number
gr.getXML(getResponse);
    
function getResponse(response) 
{    
var stateValue = response.responseXML.documentElement.getAttribute('answer');
var getName = response.responseXML.documentElement.getAttribute('answer');
alert(stateValue );
alert(getName  );
g_form.setValue('state',stateValue);
g_form.setValue('taken_by',getName);
}

Script Include:

var ChangeState = Class.create();
ChangeState.prototype = Object.extendsObject(AbstractAjaxProcessor, {
stateFieldValue:function() 
	{
	var getState = this.getParameter('sysparm_sys_id');
	gs.log("getState value is: " + getState);
		
	var getCurrentUser = gs.getUserName();
	gs.log("UserName :" + getCurrentUser);
		
	var gr = new GlideRecord("task_survey");
	gr.addQuery('task', getState); 
        gr.query();
		
	if(gr.next()) 
	{ 
		var test = gr.getValue('state');

		gs.log("test value is: " + test);
		if (test == 'requested')
		{
		var x = 'completed';
		gr.state = x;
		gr.update();
		gs.log("state value is: " + state);
		return gr.state.getDisplayValue();
                return getCurrentUser;
		}
		else
		{
		return gr.state.getDisplayValue();
                return getCurrentUser;
		}
	}
},
});
1 ACCEPTED SOLUTION

Sushant Kadam1
Kilo Guru

Hi Hemanth,

Use below script. It may help you.

Script Include:

var obj = {};
obj.var1 = 'ABC';
obj.var2 = 'XYZ';

return JSON.stringify(obj);

Client Script:

var obj = JSON.parse(answer);
alert(obj.var2);
alert(obj.var1);

 
 
Please mark my response as correct/helpful based on impact.
Regards,
Sushant Kadam

View solution in original post

2 REPLIES 2

Tony Chatfield1
Kilo Patron

Hi, normally I just use use multiple addParam\getParam matched pairs.
sysparm_name being the function different and the other params having any unique value you want

Sushant Kadam1
Kilo Guru

Hi Hemanth,

Use below script. It may help you.

Script Include:

var obj = {};
obj.var1 = 'ABC';
obj.var2 = 'XYZ';

return JSON.stringify(obj);

Client Script:

var obj = JSON.parse(answer);
alert(obj.var2);
alert(obj.var1);

 
 
Please mark my response as correct/helpful based on impact.
Regards,
Sushant Kadam