举例:外卖餐厅订餐
- 初识状态:
1 | <form method="get"> |
- 具体的菜单(菜品+价格),前台要从后台获取,这时就要前台想后台发送一个数据,jquery将Ajax封装。以GET方式向后台提交数据,链接后台的地址存在URL里面,async判断是否异步,一般都会选择true,异步,因为同步会出现卡顿现象,dataType,要求后台给我们返回的数据类型,success数据传送成功后生成的函数,函数里面的参数就是后台给我们返回的数据。
根据上图的流程,可以理解为,用户 通过脚本语言的 Ajax,向服务器传送HTTP请求,服务器将请求处理后返回一组数据到Ajax,经过一些列编码成HTML和CSS呈现给用户。毕竟所有的程序最终都要转化为HTML和CSS用户才能看到。
1 | $.ajax({ |
- 前台通过GET传送的请求,后台也要用GET方法接受,接受后将前台的需求返回。
1 | $menu = array(); |
- 这样前台的界面就会形成。
- 界面形成后,用户开始订餐
- 此时前台需要将用户选中的菜品和所选份数的数据传递给后台,后台将所选菜品对应的价格与份数相加,计算出总价,返回给前台,前台将接受到的数据呈现给用户
1 | $("#btn")[0].onclick = function() { |
- 前台通过POST方法,将勾选框的下标 key 和对应的份数 amount_ 传送到后台,后台接受到数据之后进行处理,将小计与最后的总价返回给前端。
1 | if(!empty($_POST["key"])){ |
- 结果如下(简易版网上订餐)
- 旁白:前端与服务器的交互。一个请求对应一个回应。