Kom ihåg mig?

Ajax fungerar endast i FF

 
 
Ämnesverktyg Visningsalternativ
Gammal 2008-07-22, 03:49 #1
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Jag lyckas inte få följande att fungera i någon annan webbläsare än Firefox... Jag får inga felmeddelanden eller någontingm kan inte se vad som är fel. Webbläsaren kontrolleras ju trots allt.

Kod:
<script language="Javascript">
function xmlhttpPost(strURL) {
  var xmlHttpReq = false;
  var self = this;
  // Mozilla/Safari
  if (window.XMLHttpRequest) {
    self.xmlHttpReq = new XMLHttpRequest();
  }
  // IE
  else if (window.ActiveXObject) {
    self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
  }
  self.xmlHttpReq.open('POST', strURL, true);
  self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  self.xmlHttpReq.onreadystatechange = function() {
	
  
  if (self.xmlHttpReq.readyState == 1) {
      updatepage('<br /><br /><img src="loader.gif" border="0" alt="" style="margin-left:15px;" />');
    }

 
    if (self.xmlHttpReq.readyState == 4) {
      updatepage(self.xmlHttpReq.responseText);
    }
  }
  self.xmlHttpReq.send(getquerystring());
}

function getquerystring() {
  var form   = document.forms['feeds'];
  var word = form.feed.value;
  qstr = 'feed=' + escape(word);
  return qstr;
}

function updatepage(str){
  document.getElementById("result").innerHTML = str;
}
</script>
Kristoffer G är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 06:25 #2
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 589
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 589
Använd ett bibliotek som Prototype, JQuery eller liknande. Onödigt att behöva uppfinna hjulet igen.
hnn är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 08:42 #3
turborakettis avatar
turboraketti turboraketti är inte uppkopplad
Medlem
 
Reg.datum: Feb 2008
Inlägg: 76
turboraketti turboraketti är inte uppkopplad
Medlem
turborakettis avatar
 
Reg.datum: Feb 2008
Inlägg: 76
Håller med om att jquery m.fl. med fördel kan användas till sånt här, men det är ju förstås värdefullt att kunna grunderna också, så jag föreslår att denna tråd ägnas åt att hitta felet i Brazzans kod.

Är du säker på att XMLHttpRequest-objektet skapas korrekt i MSIE (går den vidare till ActiveX-koden)? Om man kollar på Peter Paul-Kochs metod (http://www.quirksmode.org/js/xmlhttp.html) så anser han sig tydligen vara tvungen att använda try{}catch(){} och inte bara kolla ifall window.XMLHttpRequest finns. Kanske finns en anledning...

En fråga: Varför lägger du objektet i "this" ("self")? Det kan finnas problem med det beroende på hur funktionen anropas. Se http://www.quirksmode.org/js/events_advanced.html (under rubriken Drawbacks).
/C#
turboraketti är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 08:47 #4
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 589
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 589
om du byter ut POST mot GET?

Om du använder POST, kanske den förväntar sig att få data postat?
hnn är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 15:02 #5
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Vill bara förklara att jag har nada koll på javascript/Ajax... denna koder är ihopklistrad... men fungerar med FF. Jag har provat byta ut POST mot GET... samma resultat... jag har provat ta bort self och kört med this...samma resultat.

Det måste ligga i webbläsarkontrollen. Jag har kikat på Peter Paul-Kochs sätt att kontrollera läsare, men jag får inte till det i min egen kod.
Kristoffer G är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 15:10 #6
turborakettis avatar
turboraketti turboraketti är inte uppkopplad
Medlem
 
Reg.datum: Feb 2008
Inlägg: 76
turboraketti turboraketti är inte uppkopplad
Medlem
turborakettis avatar
 
Reg.datum: Feb 2008
Inlägg: 76
Jag föreslår att du tar bort både self och this, dvs:
Kod:
xmlHttpReq = new XMLHttpRequest();
osv... Du gör ju "var xmlHttpReq = false;", så det känns ju vettigt att fortsätta använda den variabeln.

Du kan också skjuta in ett "alert('Hej MSIE');" i andra if-satsen för att kontrollera att MSIE kommer dit (alert gör en enkel popup med ok-knapp).
turboraketti är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 16:06 #7
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Har provat det du säger... har plockat bort self och this.. fortfaranda samma sak (fungerar i FF men inte de andra).

Jag har även provat lägga till en alert i IE kontrollen... den ploppar inte upp... så det är väl där problemet ligger.

Men å andra sidan så fungerar det inte i Safari heller.
Kristoffer G är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 16:09 #8
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Så här ser formuläret ut

Citat:

<html>
<head>
<script type="text/javascript" src="js/fetch.js"></script>
</head>
<body>
<form name="feeds" action="index.html" method="post">
<select name="feed">
<option value="">Välj</option>
<option value="http://www.geiser.se/feed" onclick='JavaScript:xmlhttpPost("show_feed.php")'> Geiser.se</option>
<option value="http://feeds.feedburner.com/tkjblogg?format=xml" onclick='JavaScript:xmlhttpPost("show_feed.php")'> TkJ</option>
<option value="http://www.dan.se/feed" onclick='JavaScript:xmlhttpPost("show_feed.php")'> Dan.se</option>
</select>

<div id="result"></div>
</form>
</body>
</html>
Kristoffer G är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 16:14 #9
turborakettis avatar
turboraketti turboraketti är inte uppkopplad
Medlem
 
Reg.datum: Feb 2008
Inlägg: 76
turboraketti turboraketti är inte uppkopplad
Medlem
turborakettis avatar
 
Reg.datum: Feb 2008
Inlägg: 76
Ta bort "Javascript:" från onclick. Det ska bara finnas om du lägger javascript i href-attributet. Gissar att FF fattar vad du menar, men andra webbläsare genomskådar det inte (tror jag).
turboraketti är inte uppkopplad   Svara med citatSvara med citat
Gammal 2008-07-22, 16:20 #10
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Samma effekt... fungerar bara i FF.
Kristoffer G är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 02:11.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017