I had this issue. I dealt with it by setting the data type to Currency, decimals Auto, on an unbound field.
If the user enters 12.75 I set the table value to 12.75/100 so it becomes .1275
Then I have a string function which sets the text field, it's (table value * 100) then add "%". So 12.75...