How can I return a value from GM_xmlhttprequest?
Posted
by GeoffreyF67
on Stack Overflow
See other posts from Stack Overflow
or by GeoffreyF67
Published on 2009-02-08T06:05:53Z
Indexed on
2010/05/22
21:10 UTC
Read the original article
Hit count: 332
I have this code here:
var infiltrationResult;
while(thisOption) {
var trNode = document.createElement('tr');
var tdNode = document.createElement('td');
var hrefNode = document.createElement('a');
infPlanetID = thisOption.getAttribute('value');
var myURL = "http://www.hyperiums.com/servlet/Planetinf?securitylevel=90&newinfiltr=New+infiltration&planetid=" + PlanetID + "&infplanetid=" + infPlanetID;
GM_xmlhttpRequest({
method: 'GET',
url: myURL,
headers: {
'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey',
'Accept': 'application/atom+xml,application/xml,text/xml',
},
onload: function(responseDetails) {
if (responseDetails.responseText.match(/<b>Invalid order<\/td><\/tr><tr><td><BR><center><font color=#AAAA77 face=verdana,arial size=2>The target planet is blocking all infiltrations[\s\S]<BR><BR>/im)) {
// Successful match
infiltrationResult = 'Invalid Order';
} else {
// Match attempt failed
infiltrationResult = 'Infiltration Successfully Created';
}
}
});
When I add
alert(infiltrationResult);
right after it is assigned, I correctly see the string.
However, after the function has exited, I have try the same alert and I get:
undefined
Any ideas what I'm doing wrong? I'm guessing it's some simple silly javascript synxtax I'm missing here :)
G-Man
© Stack Overflow or respective owner