码迷,mamicode.com
首页 > Web开发 > 详细

Ajax中Form表单、模板引擎以及标准语法介绍

时间:2021-01-12 10:53:53      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:下拉   art   name   生成   实现   出现   地址   程序员   ima   

重点:
一、Form表单的基本使用
1、什么是表单
表单在网页中主要负责 数据采集功能。HTML中

标签,就是用于采集用户输入的信息,并通过 标签的提交操作,把采集的信息提交到服务器端进行处理
2、表单的组成部分
(1)表单标签
(2)表单域:包含了文本框,密码框,隐藏域,都行文本框,复选框,单选框,下拉选择框和文件上传框等等
(3)表单按钮:通过设置type属性为submit来触发form表单的提交
二、 标签的属性
1、action
(1)action 属性用来规定当提交表单时,向何处发送表单数据。
(2)action 属性的值应该是后端提供的一个URL地址,这个URL地址专门负责接收表单提交过来的数据。
(3)当 表单在未制定 action 属性值的清空下,action的默认值为当前页面的 URL 地址
(4)注意: 当提交表单后,会立即跳转到 action 属性指定的 URL 地址
2、target
(1)target 属性用来规定 在何处打开 action URL
(2)它的可选值有5个,默认情况下,target的值是 _self,表示在相同的框架中打开 action URL
技术图片
3、method
(1)method 属性用来规定 以何种方式 把表单数据提交到 action URL
(2)它的可选值有两个,分别是 get 和 post
(3)默认情况下,method的值为 get, 表示通过URL地址的形式,把表单数据提交到 action URL
(4)注意:
①get 方式适合用来提交少量的,简单的数据
②post 方式适合用来提交大量的,复杂的,或包含文件上传的数据
4、enctype
(1)enctype属性用来规定在 发送表单数据之前如何对数据进行编码
(2)它的可选值有三个,默认情况下,enctype的值为 application/x-www-form-urlencoded,表示在发送前编码的所有字符
技术图片
三、表单的同步提交及缺点
1、什么是表单的同步提交
通过点击 submit 按钮,触发表单提交的操作,从而使页面跳转到 action URL 的行为,叫做表单的同步提交
2、表单同步提交的缺点
(1) 表单同步提交后,整个页面会发生跳转,跳转到 action URL 所指向的地址,用户体验很差
(2) 表单同步提交后,页面之前的状态和数据会丢失
3、解决
表单只复杂采集数据,Ajax负责将数据提交到服务器
四、通过Ajax提交表单数据
1、监听表单提交事件
在 jQuery 中,有两种方式,可以监听到表单的提交事件(submit)
2、阻止表单默认提交行为
当监听到表单的提交事件以后,可以调用事件对象的 event.preventDefault() 函数,来阻止表单的提交和页面的跳转
3、如何快速获取表单数据
serialize() 函数
为了简化表单中数据的获取操作,jQuery提供了 serialize() 函数,语法格式如下:
$(selector).serialize()
好处:可以一次性获取表单的数据
注意:在使用 serialize() 函数快速获取表单数据时,必须为每个表单元素添加 name 属性
五、案例-评论列表
六、模板引擎
1、相关概念
之前在渲染UI结构时候,拼接字符串是比较麻烦的,而且很容易出现问题
模板引擎,它可以根据程序员指定的 模板结构 和 数据,自动生成一个完整的HTML页面
好处:(1)减少了字符串的拼接操作
(2)使代码结构更清晰
(3)使代码更易于阅读与维护
七、art-template模板引擎
1、基本使用
(1)导入 art-template
在window全局,就多了一个函数,叫做 template(‘模板id‘,需要渲染的数据对象)
语法:
(2)定义数据
语法:var data = { name: ‘zs‘, age: 20}
(3)定义模板
①模板的 HTML 结构,必须定义到 script 标签中,注意:需要把type属性改成 text/html
②给 模板 添加一个 id
③模板里面如果需要使用到传入的数据,利用 {{}} 来实现,例如:{{name}},那么就会去找 我们调用 template() 函数 第二个参数里面对应的name属性的值
④语法:

(4)调用 template 函数
函数的返回值就是拼接好的模板字符串
语法:var htmlStr = template(‘tpl-user‘, data)
(5)渲染HTML结构
最后我们需要把template返回的模板字符串设置到页面容器中
语法:$(‘#container‘).html(htmlStr)
八、标准语法
1、什么是标准语法
art-template 提供了 {{}} 这种语法格式,在 {{}} 内可以进行 变量输出 或 循环数组 等操作,这种 {{}} 语法在 art-template 中被称为标准语法
2、输出
在 {{}} 语法中,可以进行 变量 的输出,对象属性的输出,三元表达式输出,逻辑或输出,加减乘除等表达式输出
3、原文输出
{{@ value}}
如果输出的 value 值中,包含了 HTML 标签结构,则需要使用原文输出语法 ,才能保证HTML标签被正常渲染
4、条件输出
如果要实现条件输出,则可以在 {{}} 中使用 if...else if.../if ** 的方式,进行按需输出
技术图片
5、循环输出
如果要实现循环输出,则可以在{{}} 内,
通过 each 语法循环数组,当前循环的索引使用 $index 进行访问,当前循环项使用 $value 进行访问**
技术图片
6、过滤器
技术图片
(1)过滤器本质就是一个 function 函数
(2)语法:{{value | filterName}}
(3)过滤器语法类似于 管道操作符,它的上一个输出作为下一个输入
(4)定义过滤器的基本语法如下:
templ.defaults.imports.filterName = function(value){/return处理的结果/}
7、案例-格式化时间过滤器
(1)定义数据
(2)定义过滤器
(3)在模板引擎中使用过滤器
九、案例-新闻列表
有关jQuery中的Ajax以及接口介绍请点击a=href"https://www.cnblogs.com/kk199578/p/14243315.html"

Ajax中Form表单、模板引擎以及标准语法介绍

标签:下拉   art   name   生成   实现   出现   地址   程序员   ima   

原文地址:https://www.cnblogs.com/kk199578/p/14256267.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!