表单提交有以下两种方式,请问,有何不同?
1. XMLHttpRequest
<script type="text/javascript">
function submitData(){
var form=document.getElementById("form1");
var formData=new FormData(form);
var xhr=new XMLHttpRequest();
xhr.open("post","index.html",true);
xhr.onload= function () {
if(this.status==200)
document.getElementById("res").innerHTML=this.response;
};
xhr.send(formData);
}
</script>
<form id="form1">
姓:<input type="text" id="txtFirstName" name="firstname" value="郭" />
名:<input type="text" id="txtUserName" name="username" value="延思" />
<input type="button" value="提交" onclick="submitData();" />
</form>
// 服务器端进行处理,node.js
app.post("/index.html", function (req,res) {
var str="";
for(var k in req.body){
str+="键是:"+k+" 值是:"+req.body[k]+"<br/>";
}
res.send(str);
});
2. 表单post方法,指定脚本
<form action="/upload" enctype="multipart/form-data" method="post">
通过url="/upload"定义的router里面进行处理:
function upload(request, response) {
... // 读取表单信息..
}
--
修改:saynothing FROM 218.108.95.*
FROM 218.108.95.*