在form表单里面 autocomplete="off" 浏览器输入框关闭自动提示
在ajax里面要发送文件数据需要实例化一个FormData()对象,
还需要设置
processData:false, //告诉jQuery不要处理我的数据
contentType:false, //告诉jQuery不要设置content类型
实现示例代码:
1 //用户点击注册触发ajax
2 $("#reg-btn").click(function () {
3 //获取用户填写的注册数据,向后端发送ajax请求
4 //发送文件数据时必须 用FormData()的对象
5 var formData=new FormData();
6 formData.append(‘username‘,$("#id_username").val());
7 formData.append(‘password‘,$("#id_password").val());
8 formData.append(‘re_password‘,$("#id_re_password").val());
9 formData.append(‘email‘,$("#id_email").val());
10 formData.append(‘profile‘,$("#id_profile")[0].files[0]);
11 formData.append(‘csrfmiddlewaretoken‘,$("[name=‘csrfmiddlewaretoken‘]").val());
12 $.ajax({
13 url:‘/register/‘,
14 type:‘post‘,
15 processData:false, //告诉jQuery不要处理我的数据
16 contentType:false, //告诉jQuery不要设置content类型
17 data:formData,
18 success:function (data) {
19 if(data.status){ //如果status有值 登录失败 显示错误信息
20 $.each(data.msg,function (k,v) {
21 //遍历获取错误信息,并按id设置span标签的内容
22 $(‘#id_‘+k).next(‘span‘).text(v[0]).parent().parent().addClass(‘has-error‘);
23 })
24 }
25 else {
26 location.href=data.msg; //如果没有错误就跳转到指定页面
27 }
28 }
29 })
30 });
原文:https://www.cnblogs.com/wen-kang/p/9655316.html