Fehler bei Weiterleitung - wird nicht ausgeführt

djnelly

Erfahrenes Mitglied
Hallo..

Ich habe folgende Javascript:

Code:
<script language="JavaScript">
<!--
function loeschen(id) {
var frage = confirm("Wollen Sie diesen Datensatz mit der ID: "+String(id)+" wirklich löschen?");
	if(frage == true) {
		document.location.href = "indexais.php?action=delete&id="+String(id)
		}
	else {
		document.location.href = "indexais.php?action=nodelete"
		}
}
//-->
</script>

aufgerufen wird er so:

Code:
<a href="#" onclick="javascript:loeschen(<? echo $daten->id?>);">L&ouml;schen</a>

Hier mein Problem:

Das Aufrufen des Scriptes ..nur die funktion: ducoment.location.href geht nicht..

Was will ich tun?

Ich habe eine php Formular mit Daten. Hier ist ein Löschen Button, der mit id des Eintrages mit übergeben muss, damit ich nach der Abfrage, ob der Datensatz wirklich gelöscht werden soll, die seite erneut aufgerufen wird und dabei die php funktion delete angesprochen wird.


Warum geht die weiterleitung nicht ?
 
Hallo..

bei mir geht das. Bist du sicher, dass "$daten->id" einen numerischen Wert hat... wenn nicht, muss das in Anführungszeichen gesetzt werden.
Ansonsten fiele mir noch ein, hinter den Funktionsaufruf ein "return false" zu setzen, ...weiter wüsst ich nix auf den ersten Blick:rolleyes:
 
Ich habe auch schon vorher die window.location version versucht.
die ging auch nicht.

$daten->id wird 100% übergeben und ist nummerisch.
Das sehe ich ja im confirm Fenster.

Wo müsste das return false genau hin ?


Danke
 
Es geht!

auch ohne return false.

Mit window.location ohne href.

wie ist das, wenn ich beim aufruf der Funktion noch eine zweite variabel mit übergeben will?

also:
Code:
<a href="#" onclick="loeschen(<? echo $daten->id?>,<? echo $buchstabe?> );">Löschen</a>

Die Funktion sieht dann so aus:
Code:
<script language="JavaScript">
<!--
function loeschen(id,buchstabe) {
var frage = confirm("Wollen Sie diesen Datensatz mit der ID: "+String(id)+" wirklich löschen?");
	if(frage == true) {
		window.location = "indexais.php?action=delete&id="+String(id)+"&buchstabe="+String(buchstabe)
		}
	else {
		window.location = "indexais.php?action=nodelete"
		}
}
//-->
</script>

Die Variable Buchstabe wird richtig übergeben. Ich bekomme aber den Fehler das der Buchstabe nicht definiert ist.

woran liegt daS

Aber erstmal danke... das der rest geht.
 
hier musst du, wie fatalus schon gesagt hat, Quotes benutzen, da Buchstabe ja ein String
ist (ich geh jedenfalls mal davon aus)
Code:
loeschen(<? echo $daten->id?>, '<? echo $buchstabe?>');
 

Neue Beiträge

Zurück