JavaScript Post-Anfrage wie ein Formular abschicken

Ich versuche, einen Browser auf eine andere Seite zu leiten. Wenn ich eine GET-Anfrage wollte, könnte ich sagen

document.location.href = 'http://example.com/q=a';

Aber die Ressource, auf die ich zugreifen möchte, wird nur mit einer POST-Anfrage richtig reagieren. Wenn dies nicht dynamisch generiert würde, könnte ich den HTML-Code verwenden

<form action="http://example.com/" method="POST">
  <input type="hidden" name="q" value="a">
</form>

Dann würde ich das Formular einfach aus dem DOM heraus abschicken.

Aber eigentlich möchte ich JavaScript-Code, der mir erlaubt zu sagen

post_to_url('http://example.com/', {'q':'a'});

Was ist die beste browserübergreifende Implementierung?

Edit

Es tut mir leid, dass ich mich nicht klar ausgedrückt habe. Ich brauche eine Lösung, die den Standort des Browsers ändert, genau wie das Absenden eines Formulars. Wenn dies mit XMLHttpRequest möglich ist, ist es nicht offensichtlich. Und dies sollte nicht asynchron sein, noch verwenden XML, so Ajax ist nicht die Antwort.

Sie könnten das Formular mit DHTML dynamisch hinzufügen und dann abschicken.

Kommentare (0)

Sie könnten eine Bibliothek wie jQuery und ihre $.post-Methode verwenden.

Kommentare (1)

Sie könnten einen AJAX-Aufruf machen (wahrscheinlich mit einer Bibliothek wie Prototype.js oder JQuery). AJAX kann sowohl GET- als auch POST-Optionen verarbeiten.

Kommentare (1)