input formatter directive

Please take a look at this jsfiddle.

I'm trying to create a "widget" that will allow the user to select either a $ or % sign and format a text field accordingly. I've got it working, sort of, but it's not updating the underlying model properly.

Can someone please point out what I'm missing?

This occur because a bug(at least I think) with isolated scopes, see this working without an isolated scope

Have you considered using a filter?

Something along these lines?

http://jsfiddle.net/ganarajpr/bbKFg/1/