小谈Django中的Ajax组件

2020-12-29 08:28

阅读:670

YPE html>

标签:ring   基本   otc   允许   sync   需要   html   res   att   

AJAX

json

  • json是JavaScript对象表示法 ;
  • json是轻量级的文本数据交换格式 ;
  • json独立于语言 ;
  • json具有自我描述性 , 更易理解 ;
  • json使用JavaScript语法来描述数据对象 , 但是json仍然独立于语言和平台 ; json解释器和json库支持多种不同的编程语言 ;
  • JavaScript中可以被json序列化的数据类型 : 数字类型 , 字符串类型 , 布尔类型 , 数组类型 , 对象 , null ;
    • 序列化 : JSON.stringify() ; 反序列化 : JSON.parse() ;
  • python中可以被json序列化的数据类型 : 整型 , 浮点型 , 布尔 , 列表 , 字典 , None ;
    • 序列化 : json.dumps() ; 反序列化 : json.loads() ;
    • 把数据放入文件是 dump和load ;
    • 属性名必须用双引号 ;
    • 不能使用函数和日期类型 ;

XML

json出现之前一直使用XML , 结构类似于HTML的标签 , 一组一组的把内容括起来 ;

AJAX简介

AJAX( Asynchronous Javascript And XML ) , 异步的Javascript 和XML ; 即 : 使用Javascript语言和服务器进行异步交互 , 传输的数据为XML( 不只是XML , 现在基本都是JSON) ;

AJAX不是新的编程语言 , 而是Javascript技术 , 是一种使用现有标准的新方法 ;

AJAX最大的优点是在不重新加载整个页面的情况下 , 可以与服务器交换数据并更新部分网页内容 ; 给用户的感受是在不知不觉中完成请求和响应过程 ;

  • 异步交互 ;
  • 局部刷新 ;
  • 传输的数据量小 ;

AJAX不需要任何浏览器插件 , 但需要用户允许Javascript在浏览器上执行 :

  • 同步交互 : 客户端发出一个请求后 , 需要等待服务器响应结束后才能发出第二个请求 ;
  • 异步交互 : 客户端发出一个请求后 , 无需等待服务器响应结束就可以发出第二个请求 ;

ajax简单示例

urls.py,代码如下:

from django.conf.urls import url
from django.contrib import admin
from app01 import views

urlpatterns = [
    url(r‘^admin/‘, admin.site.urls),
    url(r‘^index/‘, views.index),
    url(r‘^calc/‘, views.calc),
]

views.py,代码如下:

from django.shortcuts import render, HttpResponse


def index(request):
    return render(request, ‘index.html‘)


def calc(request):
    i1 = request.POST.get(‘i1‘)
    i2 = request.POST.get(‘i2‘)
    i3 = int(i1) + int(i2)
    return HttpResponse(i3)

index.html,代码如下:



Title
+
=


运行效果如下:

技术图片

小谈Django中的Ajax组件

标签:ring   基本   otc   允许   sync   需要   html   res   att   

原文地址:https://www.cnblogs.com/richard_A/p/13804837.html


评论


亲,登录后才可以留言!