Thursday, May 5, 2016

button enable usaing JS from Jsff page

function buttonEnableNew(event){
  var sourceComponent=event.getSource();
  var idMap=sourceComponent.getProperty('idMap');
  if(!idMap){
    return;
  }
      var idMapping=idMap.split('~');
      var componentId=null;
      var componentValidRule=null;
      var enable=true;
      for(var i=0;idMapping.length>i;i++){
          var values=idMapping[i].split('#');
          componentId=values[0];
          componentValidRule=values[1];
          if(i==idMapping.length-2 || i==idMapping.length-1){
              continue;
          }
            var inputComponent=sourceComponent.findComponent(componentId);
            if(!inputComponent){
                return;
              }
            var inputComp = AdfDhtmlEditableValuePeer.GetContentNode(inputComponent);
            var input=inputComp.value;
          if(componentValidRule=='LENGTH'){//For checking entered text not blank
            if(input.length==0){
                enable=false;
                break;
            }
          }else{//For checking reg exp
              var regExp=new RegExp(componentValidRule);
              var flag=regExp.test(input);
              if(!flag){
                enable=false;
                break;
              }
          }
      }
      var enabledBtnId=idMapping[idMapping.length-2].split('#')[0];
      var disabledBtnId=idMapping[idMapping.length-1].split('#')[0];
      if(!enabledBtnId || !disabledBtnId){
        return;
      }
      var enabledBtn=sourceComponent.findComponent(enabledBtnId);
      var disabledBtn=sourceComponent.findComponent(disabledBtnId);
      if(!enabledBtn || !disabledBtn){
        return;
      }
      if(enable){
          enabledBtn.setProperty('visible', true);
          disabledBtn.setProperty('visible', false);
          event.getSource().focus();
      }else{
          enabledBtn.setProperty('visible', false);
          disabledBtn.setProperty('visible', true);
          event.getSource().focus();             
      }
}
------------------------------------------------------------------------------------------------
 <af:inputText id="it3" label="#{null}"
                                  value="#{pageFlowScope.userVolteActivationBean.jioNumber}"
                                  simple="true"
                                  placeholder="#{viewcontrollerBundle.JIO_NUMBER}"
                                  contentStyle="width:99%!important;"
                                  styleClass="userVolteInputText"
                                  clientComponent="true"
                                  partialTriggers="cb6"
                                  maximumLength="10" autoSubmit="true"
                                  binding="#{pageFlowScope.userVolteActivationBean.inputJioNumber}">
                        <af:clientListener method="buttonEnableNew"
                                           type="keyUp"/>
                        <af:clientAttribute name="idMap"
                                            value="it3#^[0-9]{10}$~cb6#LENGTH~cb4#LENGTH"/>
  </af:inputText>
----------------------------------------------
 <af:commandButton text="#{viewcontrollerBundle.GET_OTP}"
                                      id="cb6" partialTriggers="it3"
                                      actionListener="#{pageFlowScope.userVolteActivationBean.onGetOTP}"
                                      binding="#{pageFlowScope.userVolteActivationBean.otpBtnActual}"
                                      styleClass="saveButton"
                                      partialSubmit="true"
                                      clientComponent="true" visible="false"
                                      inlineStyle="float: none;"/>

No comments:

Post a Comment