addded ability to pass a callback onKeyup