方式一:使用 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按钮)}
js提交map类型参数
原文地址:https://www.cnblogs.com/CUI-S/p/8932591.html