The simplest way I have done this is to attach a "Person" Smart tag to the Email field, the user then only needs to choose "email" from the smart tag options... you can use a simple text field (I usually use a blue underlined text, it is what people are used to seeing to identify email addresses. the smart tag does all the work for you.

Is there any better benefit/reason for doing it through all that Mailto: code?...