其他分享
首页 > 其他分享> > Day57

Day57

作者:互联网

今日总结

ajax简介

ajsx可以在页面不刷新的情况下与后端数据交互

ajax本质其实是js代码,使用ajax需要先引入jQuery文件
# ajax与form表单的区别
	ajax提交数据页面不用刷新 原始数据还在 处理数据的过程中不影响页面其他操作
    form表单提交数据页面刷新 原始数据不在 并且处理数据的过程中无法做其他操作
   

$('#btn').click(function () {
            // 获取两个框里面的数据
            let i1Val = $('#i1').val();
            let i2Val = $('#i2').val();
            // 发送ajax请求传输数据
            $.ajax({
                url:'',  // 不写默认就是当前页面所在的地址
                type:'post', // 指定当前请求方式
                data:{'i1':i1Val,'i2':i2Val},  // 请求携带的数据
                success:function (args) {  // 异步回调函数 后端有回复自动触发
                    $('#i3').val(args)
                }
            })
        })

前后端传输数据编码格式

# urlencoded
	数据格式:username=jason&password=123
     	默认的数据编码格式
        django后端针对符合urlencoded编码格式的数据都会自动帮你解析封装到request.POST中
# formdata
	数据格式:隐藏,看不到的
    	如果你把编码格式改成formdata,那么针对普通的键值对,还是解析到request.POST中,而将文件解析到request.FILES中
# json
	 数据格式:username=jason&password=123
        django后端不会帮你处理json格式数据需要你自己去request.body获取并处理
        # form表单无法发送json格式的数据

ajax发送json格式数据

ajax发送的数据类型一定是跟数据的编码一致的

# django后端不会帮你处理json格式数据需要你自己去request.body获取并处理
$('#d1').click(function () {
        $.ajax({
            url:'',
            type:'post',  // 不写默认也是get请求
            contentType:'application/json',  // 不写默认是urlencoded编码
            data:JSON.stringify({'name':'jason','pwd':123}),  // 序列化方法
            success:function (args) {
            }
        })
    })

ajax携带文件数据

$("#d1").click(function () {
        // 需要利用内置js内置对象FormData
        let myFormData = new FormData();
        // 对象添加普通数据
        myFormData.append('username',$('#name').val())
        myFormData.append('password',$('#pwd').val())
        // 对象添加文件数据
        myFormData.append('my_file',$('#file')[0].files[0])
        // 发送ajax请求
        $.ajax({
            url:'',
            type:'post',
            data:myFormData,
            // 携带文件必须要指定的两个参数
            contentType:false,	# 不使用任何编码 django后端自动识别formdata对象
            processData:false,	# 告诉浏览器不对你的数据进行任何处理
            success:function (args) {
                // 处理异步回调返回的结果
            }
        })
    })

今天笔记不多但是有个很重要的图书系统

标签:function,val,json,ajax,格式,数据,Day57
来源: https://www.cnblogs.com/ymxda9/p/16290861.html