ajax用于前端朝后端提交数据,并且后端函数处理好结果返回给success函数作为回调函数给前端,前端拿到后端传来的值,比如code==0 来做相应的前端渲染
Ajax
局部刷新
异步提交
ajax提交数据基本写法
$(‘#b1‘).click(function(){
$.ajax({
url:‘‘, # 不写默认朝当前路径提交
type:‘post‘, # 提交数据的方式
data:{‘name‘:‘jason‘},
success:function(data){
console.log(data)
}
})
})
前端提交数据的编码方式------------->contentType
urlencoded name=jason&pwd=123&xxx=xxx
formdata 文件格式
application/json {"name":"jason"}
注意:在写web相关的项目的时候,一定要指定你提交的数据到底是什么编码格式
你在提交数据的时候,不能骗后端
ajax提交提交json格式数据
$(‘#b1‘).click(function(){
$.ajax({
url:‘‘, # 不写默认朝当前路径提交
type:‘post‘, # 提交数据的方式
data:JSON.stringify({‘name‘:‘jason‘}),
contentType:‘application/json‘
success:function(data){
console.log(data)
}
})
})
ajax上传文件
1.上传文件需要使用内置对象FormData
$("#btn").click(function () {
//上传文件,必须用FormData,生产一个formdata对象
var formdata=new FormData();
formdata.append(‘name‘,$("#name").val()); # 也支持传键值对的数据
//取出文件$("#myfile")[0].files拿到的是文件列表,取第0个把具体的文件取出来
formdata.append(‘myfile‘,$("#myfile")[0].files[0]);
$.ajax({
url:‘/index/‘,
type:‘post‘,
//不预处理数据,(name=lqz&age=18)
processData:false,
//指定往后台传数据的编码格式(urlencoded,formdata,json)
//现在用formdata对象处理了,就不需要指定编码格式了,不要给我编码了
contentType:false,
data:formdata,
success:function (data) {
alert(data)
}
})
原文:https://www.cnblogs.com/tangda/p/10821550.html