Christian: mit einem Javascript mehrer functionen ablaufen lassen

Hallo,

ich bin ein absoluter Anfänger was Javascript angeht und muss jetzt aber einsetzten. Ich habe selfhtml rauf und runter gelesen aber ich bekomme es nicht hin.

Folgende Situation: Ich habe einen Link den ich mit einem Button auslösen, welche einen Datensatz löscht. Dies funktioniert auch toll.

<input type="button" name="ja" value=" ja " onClick=<a href="self.location.href='[FMP-Link: a]&-recid=[FMP-CurrentRecID]&-delete='"></a>

Nun möchte ich aber das dieser Button automatisch den Link auslöst, danach 2 Seiten zurück geht, und diese Seite aktualisiert. Das habe ich wie folgt versucht zu umzusetzten:

<script language="JavaScript">
<!--
function loeschen()
{
/* <a href="self.location.href='[FMP-Link: a]&-recid=[FMP-CurrentRecID]&-delete='"></a> */
/* "javascript:history.go(-2)"*/
/* "javascript:location.reload()" */
}
//-->
</script>
<form>
<input type="button" name="ja" value=" ja " onClick="loeschen()">
</form>

Was mache ich falsch kann mir helfen und das script korregieren und wenn möglich auch meinen Fehler erklären.

Danke, Gruß Christian

  1. Hallo,

    <script language="JavaScript">
    <!--
    function loeschen()
    {
    /* <a href="self.location.href='[FMP-Link: a]&-recid=[FMP-CurrentRecID]&-delete='"></a> */

    Ähm, seit wann schreibt man HTML-Tags in ein JavaScript?!

    /* "javascript:history.go(-2)"*/
    /* "javascript:location.reload()" */

    Das geht so nicht. Du musst im Script keinen Link angeben.

    Ich würde das so machen (ungetestet):

    <script language="JavaScript">
    <!--
    function loeschen()
    {
    self.location.href='[FMP-Link: a]&-recid=[FMP-CurrentRecID]&-delete=';
    history.go(-2);
    }
    //-->
    </script>

    1. Super Danke für die schnelle Antwort. Ich habe es so übernommen, bekomme jedoch sofor einen Laufzeitfehler in der Zeile:

      function loeschen()

      ich den Quelltext so übernommen.

      <body>
      <script language="JavaScript">
      <!--
      function loeschen()
      {
      self.location.href='[FMP-Link: a]&-recid=[FMP-CurrentRecID]&-delete=';
      history.go(-2);
      }
      //-->
      </script>
      <form>
      <input type="button" name="ja" value="  ja  " onClick="loeschen()">
      <input type="button"  button name="zurueck"  value=" abbrechen " onClick="history.back()">
      </form>
      </body>

      Durch das History Back geht der Browser ja zweimal zurück, jedoch werden dadurch die Daten ja nicht aktuallisiert.Bei mir kommt man von einer Liste, in den Datensatz, von Dort in die oben beschrieben Anfrage, jetzt soll er nach dem löschen zurück in die Liste gehen und sich dort natürlich aktuallisieren, da ein Eintrag in der Liste ja gelöscht ist, und somit ich ein aktuallisierte Liste bekommen möchte. Wenn ich es per Hand mache funktioniert es auch, mein Gedanke war es mit einem Knopdruck zu automatisieren.

      1. Hallo,

        Super Danke für die schnelle Antwort. Ich habe es so übernommen, bekomme jedoch sofor einen Laufzeitfehler in der Zeile:

        function loeschen()

        Kann ich so nicht nachvollziehen, da ich den Rest deiner Seite nicht kenne.
        Poste mal bitte einen Link, wo man sich das Ganze komplett ansehen kann.

        Durch das History Back geht der Browser ja zweimal zurück, jedoch werden dadurch die Daten ja nicht aktuallisiert.Bei mir kommt man von einer Liste, in den Datensatz, von Dort in die oben beschrieben Anfrage, jetzt soll er nach dem löschen zurück in die Liste gehen und sich dort natürlich aktuallisieren, (...)

        Dann musst du auch in der Seite mit der Liste angeben, dass sie aktualisiert werden soll. Beispielsweise mit <body onload="refresh()">

      2. hi,

        self.location.href='[FMP-Link: a]&-recid=[FMP-CurrentRecID]&-delete=';

        was soll denn das sein?
        location.href erwartet einen URL oder einen pfad/dateinamen.

        falls du die seite irgendwie serverseitig generierst, lasse beim diskutieren clientseitiger probleme bei code-beispielen bitte alles serverseitige weg, bzw. ersetze es durch das, was wirklich beim client ankommt.

        gruss,
        wahsaga