Rolf: Formulargestaltung

Hallo,

ein Formular beginnt mit einer Reihe von grafischen Submitbutton.
In Abhängigkeit des geklickten Buttons werden dann Aktionen, wie
"New", "Edit", "Copy", "Delete" oder "Next" -Record ausgeführt.

Funktioniert alles super, bis auf den Fall, dass der User das
Formular mit [enter] abschickt, was ja aus Versehen mal passieren
kann. In diesem Fall wird immer ein neuer Datensatz angelegt, ich
vermute, weil "New" der erste Submitbutton ist.

Frage: Wie kann man das möglichst elegant umgehen?
Also ohne Script und Template komplett umzuschreiben.

m.b.G. Rolf

  1. @@Rolf:

    Funktioniert alles super, bis auf den Fall, dass der User das
    Formular mit [enter] abschickt, was ja aus Versehen mal passieren
    kann.

    Wieso „aus Versehen“? Das ist doch völlig normal, nach dem Ausfüllen eines Formulars nicht das Eingabegerät wechseln zu müssen, sondern bei dem zu bleiben, das man gerade benutzt hat, und auch das Absenden per Tastatur zu erledigen.

    Frage: Wie kann man das möglichst elegant umgehen?

    Welche Aktion soll denn beim Abschicken des Formulars mit [Enter] ausgeführt werden?

    Wenn keine, warum hast du dann überhaupt _Submit_-Button(s)?

    Live long and prosper,
    Gunnar

    --
    Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
    1. Welche Aktion soll denn beim Abschicken des Formulars mit [Enter] ausgeführt werden?

      hmm,
      ürsprünglich gar keine!

      Um die richtige Aktion auszuwählen existieren ja die Button(s).

      • mit Klick auf "New" wird ein neuer, leerer Record angelegt.
      • mit Klick auf "Edit" werden die vorhandenen Daten mit denen des Formulares überschrieben.
      • mit Klick auf "Copy" wird der angezeigte Datensatz als neuer Record angelegt.
      • mit Klick auf "Delete" wird der angezeigte Datensatz gelöscht.
      • mit Klick auf "Next" wird der nächste Record angezeigt.
        für [enter] habe ich eigentlich gar keine Verwendung ...

      m.b.G. Rolf

      1. Welche Aktion soll denn beim Abschicken des Formulars mit [Enter] ausgeführt werden?
        hmm,
        ürsprünglich gar keine!

        Um die richtige Aktion auszuwählen existieren ja die Button(s).

        • mit Klick auf "New" wird ein neuer, leerer Record angelegt.
        • mit Klick auf "Edit" werden die vorhandenen Daten mit denen des Formulares überschrieben.
        • mit Klick auf "Copy" wird der angezeigte Datensatz als neuer Record angelegt.
        • mit Klick auf "Delete" wird der angezeigte Datensatz gelöscht.
        • mit Klick auf "Next" wird der nächste Record angezeigt.
          für [enter] habe ich eigentlich gar keine Verwendung ...

        das ist aber irreführend - besonders wenn ich für ein losch-formular eine eingabemaske habe

        ich ändere brav die daten und klicke verstehentlich auf delete statt copy - schwupp weg ist er

        man sollte vorher auswählen können, was passieren soll und dann ein formular mit einem button bekommen in dem man seine aktion bestätigen kann

        1. Hai Suit,

          das ist aber irreführend - besonders wenn ich für ein losch-formular eine eingabemaske habe

          na-ja,
          Du hast ja gar kein extra Löschformular!
          Du blätterst durch die Datenbank und bearbeitest die Daten.
          Da erwarte ich, dass Du wach bist und "brain" auf ON steht ... ;-)
          Das ist ein Formular für den Admin und nicht für Deppen.

          ich ändere brav die daten und klicke verstehentlich auf delete statt copy - schwupp weg ist er

          live is live ... ;-)
          Ich hoffe, dass wir uns nie auf einer Auto-Strasse begegnen ... ;-)

          m.b.G. Rolf

          1. Da erwarte ich, dass Du wach bist und "brain" auf ON steht ... ;-)
            Das ist ein Formular für den Admin und nicht für Deppen.

            ich hab mich schon oft verklickt, obwohl ich mich nicht selbst als depp bezeichne - kommt schneller vor als man denkt

            übermüdung (täglich 16 stunden arbeiten), unachtsamkeit (telefonieren mit dem kunden nebenbei) oder technisches versagen (zucken der maus genau während man klickt)

            alles schon passiert ;)

            1. alles schon passiert ;)

              klar,
              so ist halt das Leben:
              Mir ist auf einer vierspurigen Straße mit Mittelstreifen auch schon
              mal jemand schräg über besagten Grünstreifen entgegen gekommen.
              Die Stadtväter nahmen dies jedoch nicht zum Anlass dort einen
              1m hohen Betonabweiser zu installieren - muss ich mit leben ... ;-)

              m.b.G. Rolf

      2. Mahlzeit Rolf,

        für [enter] habe ich eigentlich gar keine Verwendung ...

        Dann lass einfach den/die http://de.selfhtml.org/html/formulare/klickbuttons.htm#herkoemmlich@title=Submit-Buttons weg ...

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
        1. Hallo EKKi,

          für [enter] habe ich eigentlich gar keine Verwendung ...
          Dann lass einfach den/die http://de.selfhtml.org/html/formulare/klickbuttons.htm#herkoemmlich@title=Submit-Buttons weg ...

          aber es sollte JS-frei werden!

          Derzeit habe ich es so gelöst, dass [enter] wie "Next" wirkt.
          Hat jemand Daten eingegeben, passiert nix weiter, als dass der nächste Record angezeigt wird.

          m.b.G. Rolf

          1. Mahlzeit Rolf,

            Dann lass einfach den/die http://de.selfhtml.org/html/formulare/klickbuttons.htm#herkoemmlich@title=Submit-Buttons weg ...
            aber es sollte JS-frei werden!

            Was hat das damit zu tun? Es geht darum, dass die Buttons im type-Attribut eben NICHT "submit" stehen haben, sondern lediglich "button" ... dann dürfte der Browser keinen davon als Default-Absende-Button erkennen und beim Betätigen der Enter-Taste keinen davon übergeben. Probier's mal aus.

            MfG,
            EKKi

            --
            sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
            1. Mahlzeit Rolf,

              Dann lass einfach den/die http://de.selfhtml.org/html/formulare/klickbuttons.htm#herkoemmlich@title=Submit-Buttons weg ...
              aber es sollte JS-frei werden!
              Was hat das damit zu tun?

              wie nun,
              das Formular wird beim Klick auf einen solchen Button nicht abgesendet.
              Ein Formular das nicht abgesendet wird, ist wie ein Auto ohne Räder ... ;-)

              m.b.G. Rolf