Enable and disable button base on state

adityamadhira
Kilo Contributor

I need onchange client script to enable /disable button based on state.

function onChange(control, oldValue, newValue, isLoading, isTemplate) {

  // var state = g_form.getValue('state');

if(newValue== 11 ){

    var items = $$('BUTTON').each(function(item){

    if(item.innerHTML.indexOf('Submit') > -1){

          item.hide();  

    }

});

  }

else{

var _items = $$('BUTTON').each(function(item){

    item.innerHTML.indexOf('Submit').show();  

   

});

}

}

It fails the behavior.

Thanks

1 ACCEPTED SOLUTION

I didnt realize your show logic is flawed...


function onChange(control, oldValue, newValue, isLoading, isTemplate) {  


  // var state = g_form.getValue('state');  


if(newValue== 11 ){  


  var item = $$('BUTTON').each(function(item){  


  if(item.innerHTML.indexOf('Submit') > -1){  


          item.hide();  


  }  


});  


  }  


else{  


var _item = $$('BUTTON').each(function(_item){  


  if(_item.innerHTML.indexOf('Submit') > -1){  


          _item.show();  


  }  


});  


}  


}


View solution in original post

22 REPLIES 22

ahaz86
Mega Guru

the variable you created is "items" but then you refer to it as "item"


Neeraj Gupta1
Mega Expert

Hello Aditya,



Instead of writting a client script to disable/enable an UI, i would suggest to control it's visibility and write the condition in UI action. Would it meet your requirement ?


Cheers!


Neeraj


adityamadhira
Kilo Contributor

It must works only based on state. Only client script is possible.



I want to known how to enable form button via on change client script.



Thanks


Did you checked Alexander's point. You have created items as variable and then calling as item.