Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Melraidin
Oct 11, 2005

joojoo2915 posted:

code:
(function() {
  var oldonload = window.onload;
  window.onload = function() {
    if (oldonload)
      oldonload();
	  
	  if (!document.forms.futuresSeasonal.contractSelect.value){
var GOGRAIN_XML_URL = 'XML/futures_seasonal_chart_new.asp?ticker=<%=crop_letter%>&cropy=<%=Cropy%>';}
else{
var GOGRAIN_XML_URL = 'XML/futures_seasonal_chart_new.asp?ticker=<%=crop_letter%>&cropy=<%=Cropy%>&fs='+document.forms.futuresSeasonal.contractSelect.value;
}
    buildMovieFromXML(GOGRAIN_XML_URL);
  };
})();
[...]

First guess: define GOGRAIN_XML_URL outside of the if statement, then inside it do not use "var". Right now it looks like you're probably passing "undefined" to buildMovieFromXML as GOGRAIN_XML_URL doesn't exist outside that if statement in your code.

Try this:

code:
var GOGRAIN_XML_URL = false;

	  if (!document.forms.futuresSeasonal.contractSelect.value){
GOGRAIN_XML_URL = 'XML/futures_seasonal_chart_new.asp?ticker=<%=crop_letter%>&cropy=<%=Cropy%>';}
else{
GOGRAIN_XML_URL = 'XML/futures_seasonal_chart_new.asp?ticker=<%=crop_letter%>&cropy=<%=Cropy%>&fs='+document.forms.futuresSeasonal.contractSelect.value;
}
    buildMovieFromXML(GOGRAIN_XML_URL);

Adbot
ADBOT LOVES YOU

Melraidin
Oct 11, 2005

Lumpy posted:

Huh? He passes it as an argument before the function ends, and javascript passes by value, not reference, so it's not undefined. Using 'var' twice like that is ugly, but it works in javascript.
[...]

Well drat, you're entirely correct. I was thinking that the variable would fall out of scope as soon as execution left the if-block. Tested and I was wrong, dammit.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply