updataData() is asynchronous.
Here’s a pattern that I use and you should be able to adopt it for your needs.
var deferred = $.Deferred();<br>...<br>$.when(myModel.updateData()) <br> .done(function () {<br> // Success <br> deferred.resolve(); <br> })<br> .fail(function () {<br> // Error<br> deferred.reject();<br> }); ...<br>return deferred.promise();