You could take several steps in solving your problem. First of all, load your html and see, weather the id being rendered matches with the one that you provided. Secondly, I'd rather suggest you more rigid way to capture the element, or control the output.
You could add an extra functional class to grab the element
Html.TextBoxFor(x => x.EmailAddress1, new { @class = "fHandleClass" });
and the script
<script type="text/javascript">
//<![CDATA[
$(function(){
$(".fHandleClass").focus();
});
//]]>
</script>
Or you could directly control the id
Html.TextBoxFor(x => x.EmailAddress1, new { id = "MyExactId" });
and the script
<script type="text/javascript">
//<![CDATA[
$(function(){
$("#MyExactId").focus();
});
//]]>
</script>
And finally, I suggest you to switch to razor view engine. It is much better, the Web forms view engine were designed to be understood by the designers, it is not very friendly for handwriting.
Razor was specifically designed for being written by hand.