Onclick UI action should be grayed out

coolsaurabh
Tera Contributor

I have created a UI action Locked. I want when user click on it , it should   be grayed out . Screenshot attached (UI Action encircled in red) :-

Qt.jpg

Thanks,

Saurabh

1 ACCEPTED SOLUTION

ark6
Mega Guru

Hi Sourav,



Here you go. The below procedure works for me



1. Create a custom checkbox on your form(for me its flag)


find_real_file.png



2. Write the below code on the locked out UI action



function hello()


{



  document.getElementById("159c99bb4f303200b5d50ab18110c747").disabled = true;


  var ga = new GlideAjax("hello");


    ga.addParam("sysparm_name","hello2");


    ga.addParam("sysparm_parent",g_form.getValue('number'));


    ga.getXML(test2);


function test2(response){


var answer = response.responseXML.documentElement.getAttribute("answer");


}


  }


find_real_file.png



3. And the script include



var hello = Class.create();


hello.prototype = Object.extendsObject(AbstractAjaxProcessor, {


hello2: function() {


var groupID=this.getParameter('sysparm_parent');


  gs.log('testing1'+groupID);


  var gr=new GlideRecord("incident");


gr.addQuery('number',groupID);


gr.query();


if(gr.next())


{


gr.u_flag='true';


gr.update();


}




},


      type: 'hello'


});



find_real_file.png



4. To control the reloading issue, write the below onload client script



function onLoad() {


    //Type appropriate comment here, and begin script below


    if(g_form.getValue('u_flag')=='true')


  {


  document.getElementById("159c99bb4f303200b5d50ab18110c747").disabled = true;


  }


}




Please note: I haven't used the try/catch statements, but you need to use it in your code while playing with DOM.


Also you need to hide the flag button from the form through UI policy or ACL(dont remove it from form layout or else it will not work).



Please hit LIKE or mark HELPFUL if found appropriate


View solution in original post

27 REPLIES 27

coolsaurabh
Tera Contributor

I am trying below one but it is not working for me :-



UI Action.jpg


Could you press F12 and check what exception are you getting?


coolsaurabh
Tera Contributor

Getting below error :-



Uncaught TypeError: Cannot set property 'disabled' of null



Error_UI.jpg


Yes, the error suggest that the id you mentioned, is not correct. Please recheck your id of the button


Hi Sourabh,



Just search the id of the <button> tag for your ui action and replace it in your code and it should work



Mark Correct if this solves your issue and also hit Like and Helpful if you find my response worthy based on the impact.


Thanks


Ankur


Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader