add valueChange event