之前我们使用ajax的时候是需要一个 XMLHttpRequest 对象 现在jquery帮我们都封装好了
$.ajax({
url:'../json.do',//表示请求的路径
//这里直接拿到form表单的所有数据 以userName=值&sex=值拼接 也可以通过json方法{"user":"scott","id":10}
data:$("#myForm").serialize(),
type:'get',//以什么方式提交
async:false,//一次执行一个线程 设置异步或者同步 true为异步(默认) false为同步
dataType:'json',//表示响应的数据类型 指定 自动调用 JSON.parse方法
//之前我们判断是否是200 状态码为4的时候就会进入success里的回调函数
success:function(msg){
//将以前的数据全部先删除
$("tr[type='data']").remove();
//参数就是返回的json append添加标签
$("#mytb").append("<tr type='data'><th>"+msg.empno+"</th><th>"+msg.ename+"</th></tr>");
},
//当前面出错的时候就会进入error
error:function(xhr, textStatus, errorThrown){
alert("调用服务器失败-"+xhr.status+"-"+errorThrown)
}
});
还有很多参数可以查看jquery的api文档 还有很多方法也可以查考API文档
jquery发ajax还有很多的方式下面列举几个
$(function(){
$("#dj").click(function (){
//get方式的发ajax get(url data callback(data,status,xhr) datatype)
/*$.get("${pageContext.request.contextPath}/my.do",{'user':'zs'},function(data,status,xhr){
alert(data+"--------------"+xhr.responseText);
},"json");
//post
//get和post的参数是一样的 post(url data callback(data,status,xhr) datatype)
/*$.post("${pageContext.request.contextPath}/my.do",{'user':'zs'},function(data,status,xhr){
alert(data+"--------------"+xhr.responseText);
},"json");*/
//load 将返回的数据添加到指定的元素之中去
//load(url,data,function(response,status,xhr) response 包含来自请求的结果数据 status - 包含请求的状态
//load 当只传一个参数的时候他会自己将后台返回的值填到选择器选中的元素中
$("#hello").load("${pageContext.request.contextPath}/my.do")
})
})
load的执行前后的效果