Django1.7+JQuery+Ajax验证用户注册集成小例子
作者:mdxy-dxy 发布时间:2024-04-25 13:16:09
标签:Django,JQuery,Ajax
Ajax的出现让Web展现了更新的活力,基本所有的语言,都动态支持Ajax与起服务端进行通信,并在页面实现无刷新动态交互。 下面是散仙使用Django+Jquery+Ajax的方式来模拟实现了一个验证用户注册时,用户名存在不存在的一个小应用。注意,验证存在不存在使用的是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数据是否能拿到.
ajax验证没有问题之后,我们就可以在前端进行了,测试效果就是散仙开头所截图,本文的重点在于验证ajax的功能调用,所以并没有直接从数据库里面获取数据进行验证,而是使用了list集合,进行了数据的模拟,如果想做的更完美一点,可以把数据库部分实现,这样就与真实中的网站验证场景就一样了。


猜你喜欢
- 本文实例讲述了Python scipy的二维图像卷积运算与图像模糊处理操作。分享给大家供大家参考,具体如下:二维图像卷积运算一 代码impo
- 前言昨天因为小程序功能要获取小程序程序码,看了微信文档爬了好多坑。(留一下记录以防后面被坑)操作因为我获取到了微信那里的图片的图片流一直不知
- 下面有两种方法都可以:import numpy as npa=np.asarray([[10,20],[101,201]])# a=a[:,
- 一、背景:近期在利用 pycharm 安装第三方库时会提示 pip 不是最新版本, 因此对 pip 进行更新,但是生成最新版本之后, pi
- 本文实例讲述了Python实现将数据写入netCDF4中的方法。分享给大家供大家参考,具体如下:nc文件为处理气象数据文件。用户可以去htt
- JSP 开发之 releaseSession的实例详解Hibernate可以实现分页查询,昨天试了一下,分页效果不错。但是发现了一个问题,就
- 目录前言掘金的成长搬家命令行工具环境配置main.pycookie.jsongithub 地址前言最近不少写博客的朋友跟我反馈博客园的一些文
- 也就是 addEventListener 和 on 的区别为什么需要 addEventListener?先来看一个片段:<div id
- SQL Server 2000String driverName = "com.microsoft.jdbc.sqlserver.
- isalnum()方法检查判断字符串是否包含字母数字字符。语法以下是isalnum()方法的语法:str.isa1num()参数
- 如下所示:#coding:utf-8import binasciia = 'worker'#先把worker转换成二进制数据
- window.onload=function(){ pd(11);} function pd(number) { if(number>
- 假设有两个dict x和y,合并成一个新的dict,不改变 x和y的值,例如x = {'a': 1, 'b'
- Go 单元测试工具测试分为4个层次单元测试:对代码进行测试集成测试:对一个服务的接口测试端到端测试(链路测试):从一个链路的入口输入测试用例
- 最近,带领我的学生进行一个URTP项目设计,需要进行人脸识别。由于现在的OpenCV已经到了2.X版本,因此就不想用原来的1.X版本的代码,
- cookie并不陌生,与session一样,能够让http请求前后保持状态。与session不同之处,在于cookie数据仅保存于客户端。r
- 如何动态添加单元格!! 用insertRow()和insertCell()方法 其用法如下: insertRow() v
- 网上大部分的免费asp程序使用的是access数据库。但是access数据库作为一个中小型的单机数据库系统,在承担访问量、数据量大的网站应用
- 以下面的代码为例import osos.system(“ping www.baidu.com”)在pycharm界面运行后会显示乱码,如下图
- 我就废话不多说了,大家还是直接看代码吧!import kerasfrom keras.datasets import cifar10from