以post形式打开一个新页面,并且提交一些参数,本质是使用form的target指向一个新的空白页面
function getUrlStr(URL) {
let paramObj = {};
let paramArr = [];
let urlstr = '';
const strs = URL.split('&'); // 分割参数
for(let i=0;i<strs,length;i++){
paramObj[strs[i].split('=')[0]] = strs.split('=')[1];
}
for(let key in paramObj){
if(key != url){
paramArr.push({name:key,value:paramObj[key]});
}else{
urlstr = paramObj[key];
}
}
postForm(url, paramArr);
}
function postForm(url, params) {
var temp = document.createElement("form"); //创建form表单
temp.action = url;
temp.target = "_blank";
temp.method = "post";
temp.style.display = "none";//表单样式为隐藏
for (var item in params) {//初始化表单内部的控件
//根据实际情况创建不同的标签元素
var opt =document.createElement("input"); //添加input标签
opt.type="text"; //类型为text
opt.id = item; //设置id属性
opt.name = item; //设置name属性
opt.value = params[item]; //设置value属性
temp.appendChild(opt);
}
document.body.appendChild(temp);
setTimeout(() => {
temp.submit();
document.body.removeChild(temp);
})
}