Django1.7+JQuery+Ajax验证用户注册集成小例子


Posted in jQuery onApril 08, 2017

Ajax的出现让Web展现了更新的活力,基本所有的语言,都动态支持Ajax与起服务端进行通信,并在页面实现无刷新动态交互。 下面是散仙使用Django+Jquery+Ajax的方式来模拟实现了一个验证用户注册时,用户名存在不存在的一个小应用。注意,验证存在不存在使用的是Ajax的方式,不用让用户点击按钮验证是否存在。 截图如下:

Django1.7+JQuery+Ajax验证用户注册集成小例子

Django1.7+JQuery+Ajax验证用户注册集成小例子

页面HTML代码如下:

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
<title>Ajax验证测试</title>
</head>
<script src="/static/jquery/jquery211.js"></script>
<script> 
$(function(){ 
$("#pu").bind('keydown',function(){
c=$("#pu").val()
$.ajax({
type:"POST",
url:"/ccc/",
data:{name:c},
dataType:"json",
 success: function(data) {
$("#p").text(data.msg)
}
}); 
}) 
}) 
</script>
<body> 
输入名字进行校验:<input id="pu"type="text"> <span id="p"style="color: red"></span>
</body>
</html>

view端的代码,注意csrf的装饰方法,针对post请求:

from django.shortcuts import render
from django.http.response import HttpResponse
# Create your views here.
from django.shortcuts import render_to_response
#导入render_to_response
from django.shortcuts import render_to_response
#导入包装的csrf请求,对跨站攻击脚本做处理
from django.views.decorators.csrf import csrf_exempt
 
import json
 
def tt(request):
 return render_to_response('em/add.html')
 
 
names=list();
names.append("zhangsa")
names.append("aa")
names.append("b")
names.append("c")
 
 
@csrf_exempt
def ccc(request):
 
name=request.POST.get("name",None)
rtxt="";
 if name is not None:
 b=name in names
 if b:
#print("名字已经存在!",name)
rtxt="名字已经存在!"
else:
print("名字不存在!")
rtxt="名字不存在!"
 #print("获取的名字是:NU",name)
 
 return HttpResponse(json.dumps({"msg":rtxt}))

urls里面的代码:

#ajax校验
url(r'^ccc/$',ccc),

注意里面用到了json.dumps函数来生成json对象,注意词典的形式,在测试之前,最后,先访问一下看看,json数据是否能拿到.

Django1.7+JQuery+Ajax验证用户注册集成小例子

ajax验证没有问题之后,我们就可以在前端进行了,测试效果就是散仙开头所截图,本文的重点在于验证ajax的功能调用,所以并没有直接从数据库里面获取数据进行验证,而是使用了list集合,进行了数据的模拟,如果想做的更完美一点,可以把数据库部分实现,这样就与真实中的网站验证场景就一样了。

jQuery 相关文章推荐
jQuery UI Grid 模态框中的表格实例代码
Apr 01 jQuery
jQuery中each循环的跳出和结束实例
Aug 16 jQuery
jQuery选择器之属性筛选选择器用法详解
Sep 19 jQuery
jQuery+CSS实现的标签页效果示例【测试可用】
Aug 14 jQuery
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
Oct 26 jQuery
jQuery插件实现非常实用的tab栏切换功能【案例】
Feb 18 jQuery
Easyui 去除jquery-easui tab页div自带滚动条的方法
May 10 jQuery
jQuery删除/清空指定元素的所有子节点实例代码
Jul 04 jQuery
javascript/jquery实现点击触发事件的方法分析
Nov 11 jQuery
jquery制作的移动端购物车效果完整示例
Feb 24 jQuery
用jQuery实现抽奖程序
Apr 12 jQuery
jquery实现手风琴案例
May 04 jQuery
利用jQuery解析获取JSON数据
Apr 08 #jQuery
JavaScript使用链式方法封装jQuery中CSS()方法示例
Apr 07 #jQuery
jQuery中map函数的两种方式
Apr 07 #jQuery
jQuery获取table下某一行某一列的值实现代码
Apr 07 #jQuery
jQuery实现文章图片弹出放大效果
Apr 06 #jQuery
jQuery自定义图片上传插件实例代码
Apr 04 #jQuery
jQuery使用unlock.js插件实现滑动解锁
Apr 04 #jQuery
You might like
Sorting Array Values in PHP(数组排序)
2011/09/15 PHP
PHP上传文件参考配置大文件上传
2015/12/16 PHP
PHP7生产环境队列Beanstalkd用法详解
2020/05/19 PHP
JavaScript Date对象使用总结
2009/05/14 Javascript
javascript 最常用的10个自定义函数[推荐]
2009/12/26 Javascript
JQuery判断checkbox是否选中及其它复选框操作方法合集
2015/06/01 Javascript
Perl Substr()函数及函数的应用
2015/12/16 Javascript
jQuery Validate表单验证入门学习
2015/12/18 Javascript
谈谈第三方App接入微信登录 解读
2016/12/27 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
Vue源码学习之初始化模块init.js解析
2017/11/02 Javascript
vue2.0与bootstrap3实现列表分页效果
2017/11/28 Javascript
9102了,你还不会移动端真机调试吗
2019/03/25 Javascript
BootstrapValidator实现表单验证功能
2019/11/08 Javascript
JS实现碰撞检测效果
2020/03/12 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
[40:29]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第一场
2018/04/10 DOTA
[46:03]LGD vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python 获取文件列表(或是目录例表)
2009/03/25 Python
Python爬取网易云音乐上评论火爆的歌曲
2017/01/19 Python
python中numpy的矩阵、多维数组的用法
2018/02/05 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
python3 requests库实现多图片爬取教程
2019/12/18 Python
python序列类型种类详解
2020/02/26 Python
python json.dumps() json.dump()的区别详解
2020/07/14 Python
html5调用摄像头功能的实现代码
2018/05/07 HTML / CSS
大学新生欢迎词
2014/01/10 职场文书
和谐家庭演讲稿
2014/05/24 职场文书
离婚协议书范本及离婚须知
2014/10/15 职场文书
乡镇领导班子四风整顿行动工作汇报
2014/10/25 职场文书
学习普通话的体会
2014/11/07 职场文书
2015年暑假生活总结
2015/07/13 职场文书
2019年最新七夕唯美祝福语(60条)
2019/07/22 职场文书
Nginx开启Brotli压缩算法实现过程详解
2021/03/31 Servers
最新最全的手机号验证正则表达式
2022/02/24 Javascript
nginx lua 操作 mysql
2022/05/15 Servers