Schienen 2: Doppelbestätigungsdialoge hinzufügen

  • Ich versuche gerade, einen doppelten Bestätigungsdialog für ein submit_tag zu implementieren.

    Ich meine, Sie möchten einen Beitrag löschen und möchten, dass eine Warnung JavaScript erscheint, die Ihre Auswahl bestätigt. Gehen Sie dazu folgendermaßen vor:

     <%= link_to 'Delete', @post, :confirm => 'Are you sure?', :method => :delete %> 
     

    Wenn der Benutzer klickt, wird eine Warnmeldung mit der Bestätigung angezeigt.

    Nun möchte ich wirklich sicher sein, dass der Benutzer den Beitrag löschen möchte, also möchte ich ein weiteres Popup-Fenster haben.

    Grundsätzlich: user clicks -> first popup "Are you sure?" -> second popup -> "Are you really sure?"

    Ich verwende jQuery und verworfenen Prototyp.

    22 November 2011
    jdlJeff B.
1 answer
  • Ich denke, eine einfache Möglichkeit wäre eine jQuery-Funktion, die aufgerufen wird, wenn Sie auf den Link klicken. Etwas wie:

     function double_confirm() {
      var confirm1 = confirm('Are you sure?');
      if (confirm1 === true) {
        return confirm('Are you really sure?');
      }
      return false;
    }
     

    Als Nebenbemerkung halte ich es nicht für wirklich gutes Verhalten. Es wird wirklich ärgerlich, wenn der Benutzer alles zweimal bestätigen muss. Die Wahrscheinlichkeit ist, dass sie sich daran gewöhnen, zweimal auf OK zu klicken, so dass ein versehentliches Löschen nicht wirklich verhindert wird. Eine benutzerfreundlichere Möglichkeit ist das Rückgängigmachen. Sie können versuchen, paper_trail zu verwenden: https://github.com/airblade/paper_trail (über den Zweig schienen2) .

    22 November 2011
    ramblex