Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Variablenübergabe an JS
Frage
Hallo liebe SNler!
Ich habe ein kleines Problem mit einem Script.
Ich rufe ein Javascript auf:
<a href="javascript:loesch(<?php echo($row[i]->id); ?>)">.........</a>
wenn man über den Link fährt, steht dann da javascript:loesch(00000036) oder so. Ist auch erstmal alles ok so.
Hier nun das ausgeführte Javascript:
<SCRIPT language=JavaScript>
function loesch(x)
{
var Eingabe;
Eingabe=confirm ("Soll der Download " + x + " wirklich gelöscht werden?");
if (Eingabe==true)
{
self.location.href="../../../html/admin/downloads/loeschen.php?id=" + x;
}
else
{}
}
</SCRIPT>
Wenn das script ausgeführt wird, will er aber auf einmal ne ganz andere ID löschen. Wo ist der Fehler? Muss ich bei der Übergabe der Variable was beachten?
Danke, Johannes
Antwort 1 von rfb
beim Aufruf der Funktion muss der Parameter in Anführungszeichen stehen, sonst werden die führenden Nullen abgeschnitten.
also
statt
also
javascript:loesch("00000036") statt
javascript:loesch(00000036) Antwort 2 von JOstermann
Tut mir leid. Ich bekomme das syntaktisch(heißt das so?) nicht hin. Hab mir und ´´ und """ und allem rumprobiert.
<a href="javascript:loesch(<?php echo($row->id); ?>)">.........</a>
wie setz ich das noch in "" ?
<a href="javascript:loesch(<?php echo($row->id); ?>)">.........</a>
wie setz ich das noch in "" ?
Antwort 3 von qwrt
evtl. als Ergänzung der Ausgabe der echo-Funktion? Also so dass, die echo-Funktion die id gleich in einfachen (denn die doppelten sind ja schon vergeben) Häkchen ausgibt.
Antwort 4 von Nessus
@JOstermann
Das kannst Du mit dem sog. Escapen, einfach ein vorneanstellen.
Nessus
Das kannst Du mit dem sog. Escapen, einfach ein vorneanstellen.
Nessus

