Django框架学习笔记(27.Ajax简单操作)
2017-12-23 11:53
801 查看
原生Ajax:
urls.py:
views.py:
ajax.html:
伪ajax:
先了解下iframe标签:
利用iframe的特性伪造ajax:
获取内容:
urls.py:
url(r'^ajax/$', views.ajax), url(r'^ajax_json/$', views.ajax_json),
views.py:
def ajax(request): return render(request, 'ajax.html') def ajax_json(request): ret = { 'status': True, 'data': None, } import json return HttpResponse(json.dumps(ret))
ajax.html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <input type="text"/> <input type="button" value="Ajax1" onclick="Ajax1();"/> <script> function Ajax1(){ var xhr = new XMLHttpRequest(); xhr.open('GET', '/ajax_json/', true); xhr.onreadystatechange = function(){ if(xhr.readyState == 4){ //4表示接收完毕 var obj = JSON.parse(xhr.responseText); console.log(obj); } }; xhr.setRequestHeader('k1', 'v1'); xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset-UTF-8'); xhr.send('name=root;pwd=123'); } </script> </body> </html>
伪ajax:
先了解下iframe标签:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <input type="text" id="url"/><input type="button" value="发送iframe请求" onclick="iframeRequest();"/> <iframe id="ifm" src="http://www.baidu.com"></iframe> <script type="text/javascript" src="/static/jquery-1.12.4.js"></script> <script> function iframeRequest(){ var url = $('#url').val(); $('#ifm').attr('src', url); } </script> </body> </html>
利用iframe的特性伪造ajax:
<form action="/ajax_json/" method="POST" target="ifm1"> {% csrf_token %} <iframe name="ifm1"></iframe> <input type="text" name="username"/> <input type="text" name="email"/> <input type="submit" value="提交"/> </form>
获取内容:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="/ajax_json/" method="POST" target="ifm1"> {% csrf_token %} <iframe id="ifm1" name="ifm1"></iframe> <input type="text" name="username"/> <input type="text" name="email"/> <input type="submit" value="提交" onclick="submitForm();"/> </form> <script type="text/javascript" src="/static/jquery-1.12.4.js"></script> <script> function submitForm(){ $('#ifm1').load(function(){ var text = $('#ifm1').contents().find('body').text(); var obj = JSON.parse(text); console.log(obj) }) } </script> </body> </html>
相关文章推荐
- Django框架学习笔记(10.基于ORM实现简单的用户登录)
- Django框架学习笔记(22.CSRF原理简单介绍)
- Django框架学习笔记(26.ModelForm操作)
- Django框架学习笔记(4.简单的总结)
- Django框架学习笔记(14.一对多跨表操作)
- Django框架学习笔记(6.FBV和CBV简单介绍)
- Django框架学习笔记(9.ORM基本操作)
- 作业调度框架 Quartz 学习笔记(二) -- 简单触发器(SimpleTrigger)
- AD学习笔记之三 -- 域控制器上的简单操作介绍
- NodeJS-学习笔记(2)--使用node提供的express框架开发简单的web应用
- Django学习笔记(二)创建一个简单页面
- 关于框架学习的简单笔记
- 黑马程序员_Executor框架简单创建、运行、关闭学习笔记
- Python框架之Django学习笔记(五)
- HBase学习笔记-API简单操作
- OpenCV学习笔记(四) Mat的简单操作
- iOS学习笔记2—关于tableView的一些简单操作
- MongoDB 学习笔记(一):安装及简单shell操作
- Django学习笔记2:一个简单的开发实例
- Java Web学习笔记 Hibernate配置及数据库增删改查简单操作