微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

2021-07-12

异步请求

Ajax_Day2_Post

Post提交方式的Ajax
	 <script type="text/javascript">
	$(function (){
	//当我们的鼠标焦点离开文本框时触发一个ajax的异步请求
	$("#input").blur(function(){
	//创建xhr 对象 javascript对象 存在着浏览器差异 浏览器的内核版本 ie webkit
	var xhr;
	if(window.XMLHttpRequest){//true webkit
	var xhr= new XMLHttpRequest();
	}else{
	var xhr=new ActiveObject("Micorsoft.XMLHTTP");
	} /
	/为当前的ajax设置提交方式,以及携带请求参数
	xhr.open("POST","http://localhost:8989/Ajax_Day1/first");
	//post的提交方式在哪儿
	//模拟当前的提交方式为form表单
	xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	//提交ajax的请求 send方法中以键值对的方式提交携带的参数
	xhr.send("name=ergou");
	//处理相应的字符串内容
	xhr.onreadystatechange=function(){
	if(xhr.status==200&&xhr.readyState==4){
	console.log(xhr.responseText);
	}
	}
	})
	})
	</script>

Action对于响应乱码的解决
public String execute() throws Exception {
	//通过struts2提供的工具类获取response响应对象
	HttpServletResponse response = ServletActionContext.getResponse();
	//通过response响应对象设置一个编码格式
	response.setCharacterEncoding("utf-8");
	PrintWriter writer = response.getWriter();
	writer.print("这是我当前的第一个postajax的请求");
	System.out.println(name+"11111111111111111");
	System.out.println("这是我当前的第一个postajax的请求");
	return null;
}

原生的Ajax与Json的交互

HTTP请求协议:只能接收以字符串为单位的数据
模拟需求:通过一个Ajax的异步请求 要求你给我返回一个对象,这个对象中的所有的数据展示到当前页面中
fastjson.jar ---->阿里巴巴---->号称全世界解析json对象最快的工具
jackjson--->国外
Goson--->Google

后台java将java对象转换成为json串的方式

//将当前的java对象转换成json对象
//String jsonString = JSONObject.toJSONString(user);
//使用JSON中的方法转换json对象的同时修改对象中的日期属性值
String newuser = JSONObject.toJSONStringWithDateFormat(user, "yyyy-MM-dd");

前台将Json串转换成为json对象的两种方式

//如何将后台转换成为json串的字符串转换成为前台所熟悉的json对象
//var a=JSON.parse(xhr.responseText);
var a=eval("("+xhr.responseText+")");
console.log(a.id)
console.log(a.name)


有不对的地方还请大佬指点

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐