Further to Fabrizio's answer someone has written a javascript function which will allow you to build the form and send it via POST
at runtime.
POST
is like GET
(Where the variable is appended to the url) except the variable is sent via the headers. It is still possible to fake a POST
request so you must perform some kind of validation on the data.
function post_to_url(path, params, method) {
method = method || "post"; // Set method to post by default, if not specified.
// The rest of this code assumes you are not using a library.
// It can be made less wordy if you use one.
var form = document.createElement("form");
form.setAttribute("method", method);
form.setAttribute("action", path);
for(var key in params) {
if(params.hasOwnProperty(key)) {
var hiddenField = document.createElement("input");
hiddenField.setAttribute("type", "hidden");
hiddenField.setAttribute("name", key);
hiddenField.setAttribute("value", params[key]);
form.appendChild(hiddenField);
}
}
document.body.appendChild(form);
form.submit();
}
Used like so:
post_to_url("http://mydomain.com/", {'page_id':'10'}, "post");
Source: JavaScript post request like a form submit