ajax传输

news/2024/7/8 5:06:25

ajax:异步传输=js+xml
异步刷新:网页中只有某一块需要修改,不影响其他块。比如说弹幕,点赞等!
实现:
js:
XMLHttpRequest 对象;
该对象的方法:
open( 提交方式,服务器地址 ,true):与服务器建立连接
send(): ①get请求:send(nulll); ②post请求:send(参数值);
setRequestHeader(header,value): get:不需要设置; post:需要设置:①包含文件上传:setRequestHeader(“Content-Type”,“multiparty/form-data”); ②不包含文件:setRequestHeader(“Content-Type”,“application/x-www-form-urlencoded”);

该对象的属性:
readyState: 请求状态,等级0-4,值越大越完整,4代表ok
status: 响应状态。响应状态码,200=ok;400=无法找到服务资源;403=没有访问权限;404=访问资源不存在;500=服务器内部错误,很有可能是内部程序有错。
onreadystatechange: 回调函数
responseText: 响应格式为string
responseXML: 响应格式为xml

实例:

function aa(){
//id=stuentId,请求服务端
xmlHttpRequest=new XMLHttpRequest();
//设置回调函数
xmlHttpRequest.onreadystatechange=callBack;
xmlHttpRequest.open("post","StudentServlet",true);
//设置post方式的头信息
xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");//如果是get传递的值直接拼接在后面。
xmlHttpRequest.send("stuentId="+stuentId)//k=v
}
//接收服务器的返回值
function callBack(){
if(xmlHttpRequest.readyState==4&&xmlHttpRequest.status==200){
//接收格式
var data=xmlHttpRequest.responseText;
if(data=="true"){
alert("已存在");
}else{
alert("不存在");
}
}
}

jquery:
导入jquery的包。
举例方式:

①
$.ajax({
url:服务器地址,
请求方式:post
data:请求数据
success:function(result,testStatus){

},
error:function(xmr,errorMessage,e){

}
})

②
$.get(
服务器地址,
请求数据
function(result){

},
预期值返回类型(string/xml)//常见返回值:"xml","json","text"
)
③
$.post(
服务器地址,
请求数据
function(result){

},
预期值返回类型(string/xml)
)

实例:

function aa(){
//id=stuentId,请求服务端
var student=$("#stuentId").val();//jquery拿值方式
$.ajax({
url:“StudentServlet”,
请求方式:“post”
data:"stuentId="+stuentId,
success:function(result,testStatus){
if(result=="true"){
alert("已存在,失败");
}
else{
alert("不存在,成功");
}
},
error:function(xmr,errorMessage,e){
	alert("系统异常");
}
})
}



	
$.get(
“StudentServlet”,
"stuentId="+stuentId,
function(result){
if(result=="true"){
alert("已存在,失败");
}else{
alert("不存在,成功");
}
},
},
//常见返回值:"xml","json","text"
"text"
)

//一般用load连function都省略掉。

$("#id").load(
	“StudentServlet”,
	"stuentId="+stuentId,
	function(result){
		if(result=="true"){
				alert("已存在,失败");
		}else{
				alert("不存在,成功");
		}
	}
	)

//json方式,通过key拿value.
举例:

	var student = {"name":"zhouyi","age":"25"};//如果是json数组,是中括号[	]
	alert(student.name+"--"+student.age);//结果是zhouyi--25,字符串的拼接用双引号。

实例:

//返回的是json形式的数据,所以返回的数据需要转换或者都已json处理。这里举例都以json处理。

	function testJson(){
		$.getJson(
			“StudentServlet”,
			//"stuentId="+stuentId,
			{"name":"zhouyi","age":"25"},
			function(result){
			var jsonStudent = eval(result);//通过eval()函数,将返回值转为一个js能够识别的json对象。
			$.each(jsonStudent ,function(){
			alert(this.name+"--"+this.age)
			})
	}
	)
	}

http://www.niftyadmin.cn/n/1967378.html

相关文章

20170210解题报告

精英班考试题 2017.2.10 题目名 工资 藏妹子之处 银河之星 源文件 money.cpp/c/pas excel.pas/cpp galaxy.cpp/c/pas 输入文件 money.in excel.in galaxy.in 输出文件 money.out excel.out galaxy.out 时间限制 1000MS 1000MS 1000MS 内存限制 256MB 128…

MySQL 关于count与group by一起用的效果

本来想要效果是有多少个userId,结果却显示的是,去重后每组userId有多少个。 select count(id) from ls_wweb_log_call where userId is not null and companyUserId:companyUserId and createDate BETWEEN :nowDate AND :nextDate group by userId后来使…

Jackson将实体转为json形式,且未空或者null(不参加序列化)

Jackson将实体转为json形式,且未空或者null(不参加序列化), 常见用法: ObjectMapper mappernew ObjectMapper().setSerializationInclusion(JsonIclude.Inculde.NON_NULL) 常见还有:Include.ALAWAYS 默认;NON_DEFAULT 默认不序列化…

python的class里面的function怎么被调用

2019独角兽企业重金招聘Python工程师标准>>> 如果python class的类名和class的文件名相同,那么类中的function就默认是可见的。 例如: abc.py class abc { def function1() def function2 () } function1和function2都…

MySQL启动不起来和关闭不了的问题记录

昨天centos系统上的MySQL,不能启动(一直在启动中,不停的.....,也不报错,就一直启动中),也不能关闭(和启动效果一样)。 甚至: ps aux | grep mysql kill -9 1…

fetch传输方式

fetch传输方式 vue所利用的一种传输方式。 ①在前后台传输之前&#xff0c;需要配置好前台画面跳转的url; ②请求封装后&#xff0c;传输给后台url,返回请求数据。 ③将请求的到参数&#xff0c;导入对应的.vue,取值赋值。 <template><div class"detailsContai…

关于数据库工具_已迁移

为什么80%的码农都做不了架构师&#xff1f;>>> 数据库软件&#xff1a; Navicat、Power Designer 、Workbench 、 PHPmyAdmin 、MySQLDict(没有使用过、待试&#xff0c;如果你用过欢迎留言&#xff0c;留下你的博客地址。感谢^_^&#xff01;) 软件下载地址 powe…

linux的scp命令

scp 命令 scp 可以在 2个 linux 主机间复制文件和目录&#xff1b; 命令基本格式&#xff1a; scp [可选参数] file_source file_target 从 本地 复制到 远程 * 复制文件&#xff1a; * 命令格式&#xff1a; scp local_file remote_usernameremote_ip:remote_folder …