Altering a JSON variable is failing for following snippet:
var data = {status: ''};
rosconnection.setOnOpen(function (e) {
data.status = 'Succeeded';
alert('success');
});
rosconnection.setOnError(function (e) {
data.status = 'Failed';
alert('fail');
});
data stays empty, but the alert gets called within rosconnection.setOnOpen. The error is hard to replicate hence its used on a ros connection, but i am 100% certain that it enters atleast one of the functions with success.
You didn’t show us how you know the status didn’t change so…
My bet is: there is no way you saw the alert without the
databeing changed so your code probably looks something like this:So the status was not set yet. Check it inside the callback. AJAX…
What does AJAX means? A is for async, which means it will fire sometime in the future(near or far), you can’t know when and sometimes don’t even if it will ever be called.
Updated version: