I have a method like this:
var isNameUnique = false;
function ValidateName() {
        var url = "/SomeRules/CheckIfNameExists/";
        var request = $.ajax({
            url: url,
            method: "GET",
            data: { sName: name},
            dataType: "JSON"
        });
        request.done(function (result) {
            if (result.doesNameExists) {
                alert("Name Already Exists!");
                console.log("Name Already Exists!");
            }
            else {
                isNameUnique = true;
                console.log("Name is unique!");
            }
        });
        request.fail(function (jqXHR, textStatus) {
            console.log(textStatus);
            alert("Request failed.");
        });
    console.log("Exiting ValidateName()");
}
This is called like so:
function CreateNewUser() {
    ValidateName();
    console.log(isNameUnique);
    if(isNameUnique){
     // do stuff
    }
}
When I run the application I have these in the console in this order:
- Exiting ValidateName()
- false
- Name is unique!
When it's printing the 3rd console I expect 'isNameUnique' to be set to true. But that's not happening!!! What am I doing wrong?
Thanks in advance.
 
     
    