Jan Hančič tiene razón:la mejor manera es usar XMLHttpRequest.
He aquí un ejemplo:
var xhr = new XMLHttpRequest();
xhr.open("post", "http://ex.ample.com/file.php", true);
xhr.onreadystatechange = function() {
if(this.readyState == 4) {
// Do something with this.responseText
}
}
xhr.send("var1=val1&var2=val2");
Hay muchos tutoriales y referencias en la web sobre AJAX y el objeto xhr.