JavaScript-Post-Anfrage wie ein Formular senden

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

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

Die Ressource, auf die ich zugreifen möchte, reagiert jedoch nur dann ordnungsgemäß, wenn ich eine POST-Anforderung verwende. Wenn dies nicht dynamisch generiert würde, könnte ich das HTML verwenden

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

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

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

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

Was ist die beste browserübergreifende Implementierung?

Bearbeiten

Es tut mir leid, dass ich nicht klar war. Ich benötige eine Lösung, die den Speicherort des Browsers ändert, genau wie das Senden eines Formulars. Wenn dies möglich ist mitXMLHttpRequestist es nicht offensichtlich. Und dies sollte weder asynchron sein noch XML verwenden, daher ist Ajax nicht die Antwort.

Antworten auf die Frage(29)

Ihre Antwort auf die Frage