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