onChange

fires when the value of the control is changed

void onChange(any newValue,any oldValue, [any config] );
newValueanynewly set value
oldValueanyprevious value
configanysource of change

Example

$$("control").attachEvent("onChange", function(newValue, oldValue, config){
    webix.message(
      `Value changed from ${oldValue} to ${newValue}. Source: ${config}`
    );
});

Related samples

Details

The config parameter can have the following values:

  • "user" - if the change was made by user
  • "auto" - if the change was made by the library inner logic
  • undefined - if the change was made by a control's setValue or Form setValues method call made by a programmer.

Also, you can get a custom value as the config parameter. To do that call the setValue/setValues method passing your value as the last argument:

webix.ui({
  view:"multiselect",
  // ..config
  on:{
    onChange: function(newValue, oldValue, config){
        // config is {yourProperty: "yourValue"}
    }
  }
});
 
// onChange event will receive object as the 3rd parameter
$$("$multiselect1").setValue(newValue, {yourProperty: "yourValue"});
See also
Back to top