Django入门教程

前言

第一章: django快速入门

第二章: django MTV架构

第三章: django视图

第四章: django模板

第五章: django模型

第六章: django后台管理系统

第七章: 项目实战-简易的博客系统

第八章:django表单

第九章:django用户认证系统

第十章:django中的会话

第十一章:django安全

第十二章:django性能优化

第十三章:django实用工具

首页 > Django入门教程 > 第七章: 项目实战-简易的博客系统 > 7.3节: 前端JS快速入门

7.3节: 前端JS快速入门

薯条老师 2020-09-17 09:48:31 236656 0

编辑 收藏

广州番禺Python, Java小班周末班培训

薯条老师在广州做Python和Java的小班培训,一个班最多10人,学员的平均就业薪资有11K不在广州的同学可以报名线上直播班,跟线下小班的同学们同步学习。培训的课程有Python爬虫,Python后端开发,Python办公自动化,Python大数据分析,Python量化投资,Python机器学习,Java中高级后端开发。授课详情请点击:http://chipscoco.com/?cate=6

7.3.1 javascript:让网页动起来

html定义网页的结构,css定义网页的样式,而javascript用来对网页的行为进行控制,使得用户与网页可以进行动态交互。html中使用javascript, 主要有两种方式:

(1) 在html文件中嵌入javascript ,脚本代码在html的script标签内部进行定义

(2) 将javascript分离到外部的脚本文件,然后在html中的script标签中引入, 本教程使用的正是这种方式

javascript与python一样,是一种动态类型的解释型语言。javascript语句末尾须加;号,python无需加任何符号。

7.3.2 javascript数据类型

在javascript中,通过关键var来声明变量, 使用typeof表达式来输出变量的类型。以下为javascript的基础数据类型:

类型名

 

描述

number

数值类型,var number = 1; typeof(number)输出值为"number"

string

字符串类型,var language = "python"; typeof(language)输出值为"string"

 

boolean

布尔类型,true表示真值,false表示假值。var ok = false; typeof(ok)输出值为"boolean"

object

对象类型,类似于python中的字典类型,保存的是键值对。var book = {

  title:"遇见python"

};

typeof(book) 输出值为"object"

array

数组对象。var students = ["小美","小丽"]; typeof(students),输出值为"object",javascript中的array是一种对象类型。

function

函数类型,在javascript中,一切皆对象。

undefined

表示类型未定义,声明变量但没有赋值时,该变量为undefiend类型。var name; typeof(name),返回值为"undefined"

7.3.3 javascript控制结构

条件控制结构:

if(expression) {
;
}else if(expression) {
;
} else{
;
}

expression表示定义的表达式,语法形式与Python中的条件控制结构基本一致。javascript中的条件分支采用else if的形式,而Python中使用elif。

for-in循环控制结构:

for (element in object)
{
    ;
}

element表示对象中的元素,object表示可迭代的对象类型,在javascript中Object与数组对象,都可以进行迭代。对于Object类型的对象,迭代的element为Object的键名。对于数组对象,迭代的element为数组中的元素 。

7.3.4 javascript函数

在javascript中使用function关键字来定义函数:

function functionName(parameters) {
  return;
}

javascript中的return同Python中的return, 用来退出函数的执行,也可以返回值给函数的调用者。

7.3.5 javascript操作dom

DOM表示文档对象模型,是基于浏览器的一套API接口。对于DOM,每个浏览器在具体实现中,存在一些细微的差别,所谓的文档模型,是指浏览器在解析html文件时,按其元素的层级结构,将其构建为一种逻辑的树状结构,树结构中的节点对应于html中的标签。同学们要注意的是,DOM属于浏览器,javascript是通过DOM的api接口,来对html中的节点进行查找,创建,删除等操作。

同时DOM允许javascript在HTML文档元素中注册不同的事件处理程序,比如鼠标事件,键盘事件等。通过javascript框架jQuery,可以高效的对dom进行操作,以及绑定特定的事件处理器。

在本节的代码实例中,需要对用户的点击事件进行处理,获取用户的输入值,然后向服务端发起请求。

7.3.6 javascript框架:jQuery

(1) 选择html元素

jQuery同css一样,在操作html元素前,需要先选中html中的元素。jQuery支持CSS选择器来对html中的元素进行选择。 例如选择html中id为wrapper的标签,则写法为:$("div#wrapper")。

在jQuery中使用$符号来作为jQuery的别名

(2) 获取html元素的值

获取html元素内容的主要方法:

方法

 

描述

text()

获取html元素的内容,不包括外围的html标签

html()

获取html元素的内容,包括外围的html标签

val()

获取表单组件的输入内容,例如表单中的文本输入框

获取元素内容前,先要选择html中的元素,再执行相应的方法。例如获取id为article的p标签的文本内容,则写法为:$("p#article").text()。

(3) 绑定事件处理器

常用的dom事件:

事件名

 

描述

click

鼠标的点击事件

dblclick

鼠标的双击事件

keydown

键盘中的键被按下时触发的事件

keyup

键盘中的键被松开时触发的事件

submit

表单的提交事件

对html元素绑定事件处理器,可以通过jQuery中的on方法来进行事件绑定,语法形式为:

$(element).on(event,function(){
    ;
})

element表示html中的元素, event表示dom事件,例如在id为article的p标签中绑定鼠标的点击事件,则写法为:

$("p#article").on("click", function(){
// 执行相关操作
;
})

(4) 发送http请求

常用的jQuery请求方法:

请求方法

 

描述

get

向http服务器发起get请求,语法形式为:

$.get(url, data, function(data, status))

(1) url表示请求的url, 必传

(2) data表示可选的请求参数

(3) function表示执行完get请求后的回调函数,通过回调函数的data与status可以知道对请求响应的数据和状态

post

向http服务器发起post请求,语法形式为:

$.get(url, data, function(data, status))

(1) url表示请求的url, 必传

(2) data表示可选的请求参数

(3) function表示执行完post请求后的回调函数,通过回调函数的data与status可以知道对请求响应的数据和状态

ajax

想http服务器发起异步的http请求,语法形式为:

$.ajax(settings),settings是一个javascript对象,settings中的常用属性:

(1)url:请求的url

(2)type:请求类型,GET表示http的GET请求,POST表示http的POST请求

(3)data:请求的参数

(4)success:请求成功后的回调函数,回调函数中的参数表示服务端响应的数据

(5)error:请求失败后的回调函数,回调函数中的参数表示服务端响应的数据

7.3.7 javascript实例

以下为7.1节HTML实例中所引用的search.js文件中的javascript代码, /**/在javascript中用来做多行注释


$(function(){
    $('input#submit').on('submit',function(){

    /*
        获取id为query的输入框的值
     */
     var query = $("input#query").val();
   $.ajax({
         url:'/search/',
         type:'GET',
         data:{query: query}
     })
   });
})

7.3.8 最具实力的小班培训

薯条老师在广州做Python和Java的小班培训,一个班最多10人。不在广州的同学可以报名线上直播班,跟线下小班的同学们同步学习。打算参加小班培训的同学,必须遵守薯条老师的学习安排,认真做作业和项目。把知识学好,学扎实,那么找到一份高薪的工作就是很简单的一件事。

(1) Python后端工程师高薪就业班,月薪11K-18K,免费领取课程大纲
(2) Python爬虫工程师高薪就业班,年薪十五万,包拿Offer
(3) 数据分析高薪就业班,月薪11K-15K, 免费领取课程大纲
(4)
Python大数据挖掘,量化投资就业班,月薪12K-25K,免费领取课程大纲

扫码免费领取Python学习资料:


欢迎 发表评论: