Similarly controls with state are a bad idea
For example - a “grid control” or a “tree control”
It becomes confusing where application state should live - there needs to be a single source of truth and the less duplication the better.
For instance if you write an application which needs to represent a file tree, then do it by:
Keep the state information in nested Javascript table. See why you don’t use the DOM.
Write a simple routine to take that state and output HTML which shows that state.
You’ll be rewarded with a much simpler and more reliable design.