Kann eine einfache HTML-Verknüpfung (A) eine Seite ohne Abfragezeichenfolgenwerte erneut laden

8

Ich möchte die Seite, auf der ich mich befinde, ohne einige der vorhandenen Abfragezeichenfolgen neu laden (wodurch sich der Inhalt auf der Seite ändert). Ich habe festgestellt, dass das href-Tag leer bleibt, so dass href="" funktioniert, aber ich frage mich, ob dies eine sichere Methode ist, d. Funktioniert es in älteren Browsern?

Bearbeiten:

In der Tat Schrott, dass es leer bleibt, funktioniert nicht (einige tolle Tests von mir dort). Also, meine Frage ist jetzt, wie kann ich die gleiche Seite ohne Abfrage-String-Werte neu laden? Und ohne den Dateinamen zu kennen und ohne Javascript zu benutzen. Ich denke, ich suche nach etwas wie / oder # .

    
Chris 24.11.2011, 14:44
quelle

4 Antworten

5

Ich denke, ich kenne einen Trick. Wenn Sie ein <form> -Tag mit leerem action und keinem (oder GET) method -Parameter verwenden, verwendet es Ihre URL, ersetzt aber die GET-Parameter (Abfragezeichenfolge) durch die Werte in Ihrem Formular, also:

Auf Seite http://example.com/foo.html?query=string

%Vor%

Wenn Sie auf den Button klicken, gelangen Sie zu:

  • http://example.com/foo.html (Firefox 8)
  • http://example.com/foo.html (Internet Explorer 9)
  • http://example.com/foo.html? (Chrome 15)
  • http://example.com/foo.html? (Safari 5)

Bearbeiten: Das nachstehende Fragezeichen ist wahrscheinlich ein Webkit-Problem.

    
aorcsik 24.11.2011, 14:56
quelle
6

Es gibt einen interessanten Beitrag über leere URLs . Es bezieht sich auf RFC 3986 , das URLs definiert.

Grundsätzlich sollten Sie von spec Standpunkt aus sicher sein, dass href="" auf die aktuelle Seite verweist.

Ich gehe davon aus, dass alle Browser sich daran halten, aber das ist nur eine begründete Vermutung. Die HTML5-Spezifikation erlaubt auch leere URLs.

Bearbeiten: Um die aktualisierte Frage zu erfüllen, kann (fast) die Abfragezeichenfolge mit href="?" gelöscht werden.

    
Boldewyn 24.11.2011 14:55
quelle
0

Empty href ist ein leeres relatives uri, das aufgelöst werden sollte, um uri ohne Probleme zu erstellen.

    
soulcheck 24.11.2011 14:55
quelle
-4

Ja, Sie können Folgendes versuchen: href="#" .

    
Banov 24.11.2011 14:53
quelle

Tags und Links