Wie kann Rails eine Ansicht rendern und automatisch nach unten scrollen?

8

Ich habe eine unfassbar große Landingpage mit einem Anmeldeformular in der Mitte. Wenn ich das Formular abschicke und die Validierung fehlschlägt, möchte ich die Zielseite erneut rendern, aber ich möchte, dass sie zum Registrierungsformular gescrollt wird, damit sie die Fehler sehen und Änderungen vornehmen können. Ist es möglich, mit der Methode render zum Formular zu springen, oder muss ich redirect_to "account/new#theFormID" machen?

Ich würde lieber keine Umleitung machen, weil Sie die Formularinformationen in einer Sitzung speichern, das Formular erneut ausfüllen müssen usw. und ich möchte das herkömmliche

beibehalten %Vor%     
icecream 29.01.2011, 22:03
quelle

5 Antworten

4

Ссылка

%Vor%

So übergeben Sie Anker.

    
thenengah 29.01.2011, 22:13
quelle
27

Setzen Sie die Anker-Anweisung in das Formular und Sie können sich immer noch auf Folgendes verlassen: Rendern vom Controller ...

%Vor%     
Another Sam 20.02.2011 11:04
quelle
1

Javascript verwenden?

%Vor%     
Ibrahim AshShohail 20.02.2011 11:40
quelle
1

Ich scrollte mit render zu einem Anker und benutzte eine globale Variable und Javascript (wie von Ibrahim angedeutet).

Auf meinem Controller hatte ich folgendes:

%Vor%

Und auf meiner Seite habe ich überprüft, ob ich einen globalen @anchor habe, und wenn ja, blättern Sie dazu mit Javascript:

%Vor%     
joaopribs 13.02.2013 17:50
quelle
1

Und noch etwas ... wenn es sich um einen Link handelt, den ich tatsächlich verwende, müssen Sie ein eindeutiges param hinzufügen, damit der Browser denkt, dass etwas Neues eingereicht wird. Andernfalls wird es nur aktualisiert, ohne den Server zu treffen. Ich benutze:

%Vor%     
Another Sam 20.02.2011 11:25
quelle

Tags und Links