方式一:使用 xmlHttpRequest 对象发送数据
function sendMapPost(map, url){
var xmlHttpRequest = createXMLHttpRequest();//创建请求对象
var params = "";
for(var entry of map){
if(entry[0]!=null){
params += entry[0] + "=" + entry[1] + "&";
}
}
if(params.length>0){//如果params不为空字符串,去除最后一个 连接符 &
params.substr(0, params.length-1);
}
xmlHttpRequest.open("post", url, true);//true表示异步请求
xmlHttpRequest.setRequestHeader("cache-control","no-cache");
xmlHttpRequest.setRequestHeader("contentType","text/html;charset=uft-8") //指定发送的编码
xmlHttpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;"); //设置请求头信息
xmlHttpRequest.send(params);//发送数据
}
方式二:使用虚拟form表单的方式
function sendForm(param_map, url, method){
var form = document.createElement("form");
form.setAttribute("action", url);
form.setAttribute("method", method);
form.style.display = "none";
//追加参数
for(var entry of trolley){
var param_input = document.createElement("input");
param_input.setAttribute("type", "text");
param_input.setAttribute("name", entry[0]);
param_input.setAttribute("value", entry[1]);
form.appendChild(param_input);
}
//body追加form表单
document.body.appendChild(form);
form.submit();//提交(注意,这里的提交调用者是form表单,不是submit按钮)
}