Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[AJAX] Mislukte request in IE 5.5

Pagina: 1
Acties:

  • RickvanHaas
  • Registratie: Oktober 2004
  • Laatst online: 15-05-2024
Ik gebruik op mijn site 2 typen xmlhttp-requests: eentje verstuurt de boel als GET-variabele, de andere als POST. In het geval van GET is er geen enkel probleem, maar bij de POST-versie treden er in IE 5.5 problemen op. Onderstaand script geeft dan de foutmelding" 'XMLHttpRequest' is niet gedefinieerd".
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<script type="text/javascript">

function save_data(e) {     

        
    var name =       document.getElementById('mailinglist_name').value;
    var email =         document.getElementById('mailinglist_email').value;


    if(name == '')
    {
        alert ('Vergeet je naam niet in te vullen!');   
    }
    else if(email == '')
    {
        alert ('Vergeet je e-mail niet in te vullen!'); 
    }
    else
    {
        var xmlHttp = new XMLHttpRequest();
    
        xmlHttp.open("POST", 'ajax/save_data.php', true);
    
        xmlHttp.onreadystatechange = function()
        {   
            if(xmlHttp.readyState==4){          
                document.getElementById('response').innerHTML = xmlHttp.responseText;       
                
            }   
        }   
        
        xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');  
        xmlHttp.send('name=' + name + '&email=' + email  ); 
    }
}

</script>


Hebben jullie wellicht suggesties hoe dit te fixen is?

  • dominic
  • Registratie: Juli 2000
  • Laatst online: 02-11 11:36

dominic

will code for food

Gebruik voor IE altijd
code:
1
var req = new ActiveXObject("Microsoft.XMLHTTP");

Download my music on SoundCloud


  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Tuurlijk, al eens gegoogled op IE5.5+xmlhttprequest.

Going for adventure, lots of sun and a convertible! | GMT-8


  • posttoast
  • Registratie: April 2000
  • Nu online
Beetje offtopic: ik vind het bewonderenswaardig dat je je best doet om je site helemaal functioneel te laten zijn onder IE 5.5, maar hoeveel mensen gebruiken die browser nog? Ik ben IE 6 al (gracefully, functioneel moet het nog wel werken) aan het uitfaseren...

omniscale.nl


  • Bitage
  • Registratie: April 2006
  • Laatst online: 19-05-2024
Gebruik deze code om cross-browser AJAX requests te kunnen maken:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function ajax()
  {
  var xmlHttp;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      try
        {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
      catch (e)
        {
        alert("Your browser does not support AJAX!");
        return false;
        }
      }
    }

  // xmlHttp is nu je AJAX-var
  
  }


Maar natuurlijk had je zelf al gegoogled ;)

[ Voor 3% gewijzigd door Bitage op 17-04-2008 20:45 ]


  • BCC
  • Registratie: Juli 2000
  • Laatst online: 19:28

BCC

Bitage schreef op donderdag 17 april 2008 @ 20:44:
Gebruik deze code om cross-browser AJAX requests te kunnen maken:
Of gebruik prototype.

Na betaling van een licentievergoeding van €1.000 verkrijgen bedrijven het recht om deze post te gebruiken voor het trainen van artificiële intelligentiesystemen.


  • RickvanHaas
  • Registratie: Oktober 2004
  • Laatst online: 15-05-2024
Werkt inderdaad perfect. Dank je!

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

En nu gewoon netjes:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
if (!window.XMLHttpRequest)
{
    window.XMLHttpRequest = function()
    {
        // http://blogs.msdn.com/xmlteam/archive/2006/10/23/using-the-right-version-of-msxml-in-internet-explorer.aspx
        var types = [
            'MSXML2.XMLHTTP.6.0',
            'MSXML2.XMLHTTP.3.0'
        ];

        for (var i = 0; i < types.length; i++)
        {
            try
            {
                return new ActiveXObject(types[i]);
            }
            catch(e) {}
        }

        return undefined;
    }
}

en je hoeft de rest van je code niet aan te passen omdat new XMLHttpRequest(); nu ook in IE < 7 werkt :)

Intentionally left blank


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 07:40

Creepy

Tactical Espionage Splatterer

En ook alsnog een move naar Webdesign, Markup & Clientside Scripting

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1