Results 1 to 4 of 4

Thread: Loading page onselect

  1. #1
    Join Date
    Jan 2008
    Posts
    21
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Red face Loading page onselect

    Hi
    I am trying to get a url onselect option but is not working can anyone look at my script and please correct it???


    ############################

    var xmlHttp

    function GetUrl(striurl)
    {
    xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
    {
    alert ("Your browser does not support AJAX!");
    return;
    }
    var url=strurl;
    url=url+"&sid="+Math.random();
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);

    }

    function stateChanged()
    {
    if (xmlHttp.readyState==4)
    {
    document.getElementById("mydiv").innerHTML=xmlHttp.responseText;
    }
    }

    function GetXmlHttpObject()
    {
    var xmlHttp=null;
    try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
    // Internet Explorer
    try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    }
    return xmlHttp;
    }

    <form id="mf">
    <select id="smf" onselect="GetUrl(this.value)"><option value="http://google.com">Get Google</option></select>


    <div id="mydiv"><div>

    ######################


    Thnx Vry Mch

  2. #2
    Join Date
    Jan 2008
    Posts
    4,168
    Thanks
    28
    Thanked 628 Times in 624 Posts
    Blog Entries
    1

    Default

    Try this:
    Code:
    <select id="smf" onchange="GetUrl(this.value)"><option></option><option value="http://google.com">Get Google</option></select>
    Last edited by Nile; 08-21-2008 at 01:32 AM.
    Jeremy | jfein.net

  3. #3
    Join Date
    Jan 2008
    Posts
    21
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default

    No bro its not working!

  4. #4
    Join Date
    Jul 2006
    Location
    just north of Boston, MA
    Posts
    1,806
    Thanks
    13
    Thanked 72 Times in 72 Posts

    Default

    you need to pass the reference of the xmlHttpObject or it will not be present because of the scope.

    Code:
    function GetUrl(striurl)
    {
    xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
    {
    alert ("Your browser does not support AJAX!");
    return;
    }
    var url=strurl;
    url=url+"&sid="+Math.random();
    xmlHttp.onreadystatechange=stateChanged(xmlHttp);
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
    
    }
    
    function stateChanged(&state)
    {
    if (state.readyState==4)
    {
    document.getElementById("mydiv").innerHTML=state.responseText;
    }
    }
    or you could do the state change processing without changing functions
    Code:
    function GetUrl(striurl)
    {
    xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
    {
    alert ("Your browser does not support AJAX!");
    return;
    }
    var url=strurl;
    url=url+"&sid="+Math.random();
    xmlHttp.onreadystatechange= function () {
      if(xmlHttp.readyState ==4)
      {
          document.write(xmlHttp.responseText);
      }
    }
    
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
    
    }

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •