可以手动构建一个FormData进行表单提交,代码如下:
var form = new FormData()//添加参数
form.append('name', 'jack')
form.append('age', 20)
//使用xmlhttprequest发起请求
var xhr = new XMLHttpRequest()
xhr.open('post', '这里添上请求的url', true)
xhr.onreadystatechange = function() {
if(xhr.readyState == 4) {
//成功
}
}
//执行请求
xhr.send(form)
下面是用js动态创建form然后进行post提交的方式,参数url是表单提交的去向,参数params是给去向传递的参数(JSON结构),参数target设置何处打开链接文档(可选):function postcall( url, params, target){
var tempform = document.createElement("form")
tempform.action = url
tempform.method = "post"
tempform.style.display="none"
if(target) {
tempform.target = target
}
for (var x in params) {
var opt = document.createElement("input")
opt.name = x
opt.value = params[x]
tempform.appendChild(opt)
}
var opt = document.createElement("input")
opt.type = "submit"
tempform.appendChild(opt)
document.body.appendChild(tempform)
tempform.submit()
document.body.removeChild(tempform)
}