diff --git a/src/js/packages/@reactpy/client/src/components.tsx b/src/js/packages/@reactpy/client/src/components.tsx index efaa7a759..89b225672 100644 --- a/src/js/packages/@reactpy/client/src/components.tsx +++ b/src/js/packages/@reactpy/client/src/components.tsx @@ -101,6 +101,11 @@ function UserInputElement({ model }: { model: ReactPyVdom }): JSX.Element { // allow the client to respond (and possibly change the value) givenOnChange(event); }; + } else if (!givenOnChange) { + props.onChange = (event: ChangeEvent) => { + // set the value so rerender doesn't stomp on state + setValue(event.target.value); + } } // Use createElement here to avoid warning about variable numbers of children not