Problem mit Dropdown - JavaScript und PHP
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aktuellen inhalt
code
darstellen
einstellung
erlesener schwachsinn
funktionieren
idee
jemand
kleinen code
kram
liegen
sichtbarkeit
string
test
url
vergleich
versuch
zeichen
-
Hi
ich habe mit einem Script einen kleinen Code geschrieben, der ein DropDown darstellen soll. Es scheint an den Zeilenumbrüchen in der PHP-Variable $bar_dropdown_inhalt zu liegen, wenn ich die Variable statt dem aktuellen Inhalt einfach mit z.B. "a" fülle, funzt es problemlos. Daher habe ich wie unten gezeigt mit str-replace alle Zeilenumbrüche gelöscht. Es klappt aber trotzdem nicht.
Weiß jemand woran das liegt oder wie man es beheben kann?
<?php $bar_dropdown_inhalt=" <div style='border:3px groove #999999; width:220px;height:145px;padding:0px;'> <table border='0' cellspacing='0' style='width:100%;'> <tr> <td style='padding-left:10px;'> <a href=''><div>Einstellungen</div></a> <a href=''><div>Account</div></a> <a href=''><div>Designanpassungen</div></a> </td> <td align='right' style='width:85px;'> <img src='".$folder."data/avatars/default.jpg' width='80px' style='border:2px solid 336699;'> </td> </tr> </table> <div style='text-align:right;margin-top:15px;'> <a href=''><div>Hilfsdatenbank</div></a> <a href=''><div>Abmelden</div></a> </div> </div>"; $bar_dropdown_inhalt = str_replace("\n", "", $bar_dropdown_inhalt); ?> <script language="JavaScript" type="text/javascript"> function bar_dropdown () { document.getElementById("bar_dropdownbox").innerHTML += "<?php echo $bar_dropdown_inhalt; ?>"; } </script>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hi,
versuch die Variable mal mit einem var_dump auszugeben und reinige sie ggf. mit trim(), es kann sein das es noch Leerzeichen und anderen kram drin hat der da nix zu suchen hat und den man auch nicht sofort sieht.
Das var_dump zeigt dir dann an wie viele Zeichen die einzelnen Einträge haben, kannst dann ja mal nachzählen.
Grüsse
Color -
squid schrieb:
so?
... oder wie man es beheben kann?
<?php // nur für die sichtbarkeit echo '<div id="bar_dropdownbox">test</div>'; $folder = ''; $bar_dropdown_inhalt = <<< EOT <div style="border:3px groove #999999;width:220px;height:145px;padding:0px;"> <table border="0" cellspacing="0" style="width:100%;"> <tr> <td style="padding-left:10px;"> <a href="">Einstellungen</a> <a href="">Account</a> <a href="">Designanpassungen</a> </td> <td align="right" style="width:85px;"> <img src="$folder/data/avatars/default.jpg" width="80px" style="border:2px solid #336699;" /> </td> </tr> </table> <div style="text-align:right;margin-top:15px;"> <a href="">Hilfsdatenbank</a> <a href="">Abmelden</a> </div> </div> EOT; // das brauchst du hier nicht #$bar_dropdown_inhalt = str_replace("\n", "", $bar_dropdown_inhalt); echo <<< EOT <script language="JavaScript" type="text/javascript"> function bar_dropdown() { document.getElementById("bar_dropdownbox").innerHTML += $bar_dropdown_inhalt; } </script> // nur für die sichtbarkeit <script language="JavaScript" type="text/javascript">bar_dropdown();</script> EOT;
Beitrag zuletzt geändert: 12.8.2011 23:15:35 von hemiolos -
nochmal zum verständnis:
str_replace sollte ja auch funktionieren... wahrscheinlich sind die umbrüche im string nicht nur mit "\n" sondern auch oder ersatzweise mit "\r" oder gar mit "\r\n" vorhanden. -
hcms schrieb:
als idee ist ein erlesener schwachsinn. vergleiche originalcode mit dem ausgebesserten und kannst sehen, woran es gelegen hat.
... die umbrüche ... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage