js 模拟POST提交enctype="multipartform-data"类型的表单

JavaScript033

js 模拟POST提交enctype="multipartform-data"类型的表单,第1张

只是需要文件上传才用它的

xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded")

改成

xmlHttp.setRequestHeader("Content-Type","multipart/form-data")。

js模拟post提交的代码

通过js模拟post提交

1:请求需要的参数过长,超过get允许的最大长度

2:想要隐藏地址栏的参数

//新创建一个form表单

document.write('<form name=myForm></form>') 

var myForm=document.forms['myForm'] 

myForm.action='runEmpAttendance' 

myForm.method='POST'

var input = document.createElement('input')

input.type = 'text'

input.name = 'userId'

input.value = 100

myForm.appendChild(input)

myForm.submit()

//使用jsp中已经存在的form表单,添加其他的参数

var myForm = document.forms['listEmployee']  //表单的name

var input = document.createElement('input')

input.type = 'hidden'

input.name = 'currentPage'

input.value = 1

myForm.appendChild(input)

myForm.method= 'POST'

myForm.submit()。

b.html里这么写

<form action="a.html" method="get">

<input type="text" name="username" />

<input type="submit" value="post" />

</form>

在文本框输入一些东西后点下按钮就可以提交到a.html里了,你也可以看到地址栏里后面跟了一串数据:?username=文本里填的东西;

但是要通过js取出这个数据的话,得用到jsp里面的内置对象 request,调用request.getParameter("username") 就能去到文本框里写的东西了。所以html文件取不到,得用jsp