当前位置:首页>开发>正文

ajax有几种方式传数 ajax 使用POST方法传的数据服务端怎么接

2023-05-08 04:38:11 互联网 未知 开发

 ajax有几种方式传数 ajax 使用POST方法传的数据服务端怎么接

ajax有几种方式传数

一个参数

第一种方法 
以下所有方法中本人用的JavaScript中data属性 ,你也可以直接获取value值 都可以贴个例子
${exam.sid } 
//取值的时候这么写就可以了 注意括号中的值必须和-后的值一致 
var sid=$(this).data("c") 
url:"", 
type:"get", 
data:{"id":id}, 
success:function(data){ }
第二种方法 
//取值的方法同上 
url:"${basePath}/editPassword.html?no=" no
多参数的方法
赋值方法如下
录入成绩
1
取值方法如下 
var id=$(this).data("a")--- 
var cid=$(this).data("b") 
var sid=$(this).data("c")
传参方法 
url:"/scoreAdd.html?cid=" cid "&id=" id "&sid=" sid 
还有一种序列化方法 直接序列化成对象传递参数 
body代码如图所示(注意name的值必须和对象的属性一样) 
form id=”f” action=”” method=”post”>


$.ajax({
url:"${basePath}/studentEdit.html",
type:"post",
dataType:"text",
data:$("#f").serialize(),
success:function(){

})
传递多个对象的方法
var list=[]
for(var i=0ivar student=new Object()
//student.sno=$(".sno").eq(i).text()
//student.sname=$(".sname").eq(i).text()
student.sud=$(".sud").eq(i).text()
student.score=$(".score").val()
student.eid=$(".eid").val()
student.sid=$(".sid").val()
student.cid=$(".cid").val()
list[i]=student
}  
console.log(JSON.stringify(list))  
$.ajax({
url : "${basePath}/addScore.html",  
data : {students:JSON.stringify(list)},  
type:"post",
dataType : "text",  
success : function(data) {  
if(data>0){
alert("录取成绩成功")
}else{
alert("成绩添加失败")
}
}  
})  
后台使用jackson 接受的 jsonobject也可以
List list=null
ObjectMapper om=new ObjectMapper()
System.out.println(students)
try {
list=om.readValue(students, new TypeReference>() {})

ajax 使用POST方法传的数据服务端怎么接

ASP段还是照常,用request.form("xx")的方式接收,关键是用Ajax方式提交数据的时候,对传递的值进行编码,和设置文件头,下面是一个ajax用Post方式提交数据的函数,你参考下:
function Post(){
var name=document.form1.name.value
var sex=document.form1.sex.value
var Ajax=createXMLHttps()//---这是创建XMLHttps对象的函数,就不写了
var url="Ajax_Post.asp"//--接收数据的页面
var sendData="v_name=" escape(name)//包含中文的值,需要escape进行编码
sendData ="&sex=" escape(sex)
Ajax.onreadystatechange=function(){
if (4==Ajax.readyState){
//在这里进行你需要的一些操作
}
}
Ajax.open("POST",url,true)
//如果是POST方式提交数据,下两行必不可少
Ajax.setrequestheader("content-length",sendData.length)
Ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
Ajax.send(sendData)//要POST的数据
}
---------------------
接收数据时,直接使用request.form("name")即可获得name的值,为防止出错,也可对获取到的值再进行反编码
name=unescape(request.form("name"))---用unescape函数