Swapping out character skins using javascript?

Hello,

I'm making a game where my character can swap different "forms" and have unique abilities in each form. However, I'm having trouble being able to change forms on the fly. What I mean is I want to press a button to shift forms and this would simply change my character's material (ex. change from fire to water form). I have different prefabs for each form, so would I just delete the current transform and instantiate a new one in the same position whenever I want to swap? I feel this may lead to complications as the enemies are "linked" and have my main character controller targeted from the beginning...so I'm just wondering if there's an easier way to do this or if I'm on the right track...

You could add a empty gameobject as the player, have the form prefab be a child to it, and switch them out. This would keep the enemies targeting, and the form could change.