GlideAjax not working, sysparm_name is not calling the method

Jansen Miotto
Giga Expert

Hey everyone,

 

I have created this UI Page:

<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
	<p><g:ui_checkbox name="check_feature" id="check_feature">Feature</g:ui_checkbox></p>
	<p><g:ui_checkbox name="check_history" id="check_history"/>History</p>
	<div style="float:right">
		 <g:dialog_buttons_ok_cancel ok="index();return false;"/>
	
	</div>
</j:jelly>

with this client script:

function index() {
    var note = gel('check_feature').value;
    var note2 = gel('check_history').value;

    if (note == 'true') {
        //nome do script include
        var ga = new GlideAjax("TesteQuatro");
        //nome e nome da função
        ga.addParam("sysparm_name", "testeQuatro");
        ga.getXML(getRequiredEndereco);

    }

    function getRequiredEndereco(response) {
        var answer = response.responseXML.documentElement.getAttribute("answer");
        alert("answer");
    }


}

with this script include:

find_real_file.png

However, the method is not being called. Can anyone help me?

1 REPLY 1

Ravi9
ServiceNow Employee
ServiceNow Employee

In script include I dont think alert would work ! you have to return something

testeQuaotro: function(){

return "Hola!";

}

For more info , refer and understand GlideAjax guide in developer and doc site in details pls ...

Here is an updated sample

function index() {
    var note = gel('check_feature').value;
    var note2 = gel('check_history').value;
    alert(note + " " + note2);
    if (note == 'true') {
        //nome do script include
        var ga = new GlideAjax("global.TesteQuatro");
        //nome e nome da função
        ga.addParam("sysparm_name", "testeQuatro");
        ga.getXML(getRequiredEndereco);

    }

    function getRequiredEndereco(response) {
        var answer = response.responseXML.documentElement.getAttribute("answer");
        alert(answer);
    }


}
var TesteQuatro = Class.create();
TesteQuatro.prototype = Object.extendsObject(AbstractAjaxProcessor, {
    testeQuatro: function() {
        return "hola!";
    },

    type: 'TesteQuatro'
});

find_real_file.png