unobtrusive with remote test

http://stackoverflow.com/questions/19282497/mvc4-unobtrusive-validation-doesnt-wait-for-remote-validation-to-be-completed

by ryleyb

HTML

<script src="http://jquery.bassistance.de/validate/jquery.validate.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/mvc/3.0/jquery.validate.unobtrusive.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/smoothness/jquery-ui.css">

CSS

.input-validation-error {
    color:red;
}

JavaScript

$('body').append('<form name="myForm" id="nameForm">'+
    'First Name:        <input data-val="true" data-val-required="A date is required." type="text" id="firstName" name="firstName" />'+
                 '<br/>Last Name:        <input type="text" name="lastName" data-val-remote="true" data-val-remote-url="/echo/html/" data-val-remote-type="post" data-val-remote-additionalfields="html" data-val="true" />'+
                 '<input type="hidden" name="html" value="false" />'+
        '<br/>        <input type="submit" />'+
'</form>');
                 
$.validator.unobtrusive.parse($('#nameForm'));                 

$('#nameForm').data('validator').settings.submitHandler = function(form){
   alert('successful submit.  Return false from here to not submit the form (i.e. for AJAX)'); 
};