Hallo,
ich finde nicht die Möglichkeit die Vorschaubilder auszuschalten. Warum versteckt es Firefox?
Hat jemand einen Tipp?
Danke
Beiträge von Echo55
-
-
Hallo,
ich habe ein falsches Beispiel verwendet, da bekam in der alert-Popup eine Fehlermeldung. Mit Hilfe von Mozilla Leuten
konnte ich den Code verbessern und zwar: die req.status(..) wie folgt ändern "if(req.status!=200 && req.status!=0)"Was XMLHttpRequest betrifft, folgt das Beispiel
1.html-Datei
===========HTML
Alles anzeigen// aus dpunkt.verlag Javascript, Kap.19 <html> <head> <script type="text/javascript"> function showUser(str) { if (str=="") { document.getElementById("txtHint").innerHTML=""; return; } if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("txtHint").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","getuser.php?q="+str,false); xmlhttp.send(); } </script> </head> <body> <form> <select name="users" onchange="showUser(this.value)"> <option value="">Select a person:</option> <option value="1">Peter Griffin</option> <option value="2">Lois Griffin</option> <option value="3">Glenn Quagmire</option> <option value="4">Joseph Swanson</option> </select> </form> <div id="txtHint"><b>Person info will be listed here.</b></div> </body> </html>
2. die php-Datei
==============PHP
Alles anzeigen<?php $q=$_GET["q"]; // USER und PASSWORT müssen angepasst weden $con = mysql_connect('localhost', 'peter', 'abc123'); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("v2", $con); $sql='SELECT * FROM person WHERE id="'.$q.'"'; $result = mysql_query($sql); echo mysql_error(); echo "<table border='1'> <tr> <th>Firstname</th> <th>Lastname</th> <th>Age</th> <th>Hometown</th> <th>Job</th> </tr>"; while($row = mysql_fetch_array($result)) { echo "<tr>"; echo "<td>" . $row['firstname'] . "</td>"; echo "<td>" . $row['lastname'] . "</td>"; echo "<td>" . $row['age'] . "</td>"; echo "<td>" . $row['hometown'] . "</td>"; echo "<td>" . $row['job'] . "</td>"; echo "</tr>"; } echo "</table>"; mysql_close($con); ?>
3. Mysql-Datei
=============Code
Alles anzeigenCREATE TABLE `person` ( `id` int(5) unsigned NOT NULL auto_increment, `firstname` varchar(20) NOT NULL, `lastname` varchar(20), `age` int(5), `hometown` varchar(20), `job` varchar(20), UNIQUE KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=22 ; INSERT INTO `person` (`id`, `firstname`, `lastname`, `age`,`hometown`,`job`) VALUES (1, 'Peter', 'Griffin', 41, 'Quahog', 'Brewery'), (2, 'Lois', 'Griffin', 40, 'Newport', 'Piano Teacher'), (3, 'Joseph', 'Swanson', 39, 'Quahog', 'Police Officer'), (4, 'Glenn', 'Quagmire', 41, 'Quahog', 'Pilot');
Wie bereits erwähnt tritt der XMLHttpRequest Fehler nur in FF 3.0 auf, in Konqueror hingegen werden die Werte angezeigt.
Tschüss bk -
Hallo,
hier ein kleines Beispiel aus dem Netz das in Konqueror den Text alert"Hello World" anzeigt und Firefox gibt es eine Fehlermeldung:HTML
Alles anzeigen<html> <head> <title>Meine ersten Ajax Erfahrungen</title> <script type="text/javascript"> <!-- function doIt(){ //erstellen des requests var req = null; try{ req = new XMLHttpRequest(); } catch (ms){ try{ req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (nonms){ try{ req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (failed){ req = null; } } } if (req == null) alert("Error creating request object!"); //anfrage erstellen (GET, url ist localhost, //request ist asynchron // req.open("GET", 'http://localhost/ajax-tutorial/eins/test.txt', true); <-- Original-Text req.open("GET", 'test.txt', true); //Beim abschliessen des request wird diese Funktion ausgeführt req.onreadystatechange = function(){ switch(req.readyState) { case 4: if(req.status!=200) { alert("Fehler:"+req.status); }else{ alert(req.responseText); //schreibe die antwort in den div container mit der id content document.getElementById('eins').innerHTML = '<strong>'+ req.responseText +'</strong>'; } break; default: return false; break; } }; req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); req.send(null); } //--> </script> </head> <body> <div id="eins" style="width: 80%; height: 80%; border: dashed 1px;"> <input type="button" onclick="doIt();" value="Mach was!"/> </div> </body> </html>
Beide Dateien befinden im gleichen Verzeichnis unter /var/www/
In der Datei "test.txt" steht nur "Hello World!"
Der im Betreff genannte Fehler tritt hier nicht auf, aber es scheint, dass der Inhalt von "test.txt" nicht geparst wird.Wenn man z B. statt "test.txt" eine PHP-Datei aufruft -> req.open("GET","getuser.php?q="+str,false);
kommt die im Betreff genannte Fehlermeldung.
Ich vermute deshalb, dass es etwas mit dem Parsen oder mit der Parameterübergabe zu tun hat.
bk -
Hallo,
nach langen googlen bin ich auf deine mail gestoßen. Ich habe das gleich Problem und suchte nach einer Lösung leider
vergebens. Ich vermute dass es bis FF 3.0 nicht funktioniert. Ob und wann der Fehler in künftigen FFs behoben wird, muss man abwarten.Bei meinen Versuchen habe ich festgestellt, dass der Fehler bei Konqueror nicht auftritt.
Mein PC läuft unter Kubuntu 9.04.
Bin neugierig ob dein Code auf einen anderen Browser läuft?
tschüss bk