寒假随笔5——网上购物系统完成(HTML+JSON+AJAX+JQuery+Servlet编写)

 本系统主要是为了学习HTML+JQuery+AJAX动态生成页面以及CSS+Layui搭建页面框架。

我先来谈谈写这个系统的感受,以前总是用jsp编写网页,当时就觉得网页里插入JAVA语言有点别扭(可能我有点强迫症。。。)。前几天我就在想可不可以用HTML完全取而代之(主要是想把我前几天用jsp写的网上购物系统改的好看点),然后,我做到了,写到现在一共用了4天,每天坚持写几个小时,感觉很爽。其实后台函数写的很快,主要是前端的动态生成页面,我想了很久。现在想想,貌似也不是很难,接下来我用我的展示订单页面为例给大家解说:

效果图:

 

 

一、先用CSS搭建整体的div框架

这是我该页面的最外层框架,就是上方效果图中的空白部分。其实div在网页中是块状展示,他是一个容器,可以装纳任何东西,也可以被其他div嵌套,在div里装你任何想排版的东西,上图中每个订单区块就是一个div,他们采用内联的方式全部被包含在下图的外层框架之中,最好亲自去感受一下,很好用的。

 

 下面就是我每个订单区块的css代码,动态生成的时候在初始页面框架中逐次遍历添加对应元素即可,但追加的时候一定要添加对应css类。

 1 .item{
 2     display: inline-block;
 3     background-color: white;
 4     width: 370px;
 5     height: 250px;
 6     border: 1px solid white;
 7     border-radius: 12px;
 8     margin-left:25px; 
 9     margin-top: 12px;
10 }
11 .main{
12     display: block;
13     background-color: #f5f5f5;
14     margin-top: 10px;
15     margin-left: 10px;
16     width: 350px;
17     height:200px; 
18     border-radius: 12px;
19 }
20 .img{
21     display: inline-block;
22     background-color: white;
23     width: 180px;
24     height: 180px;
25     background-color: white;
26     margin: 10px;
27 }
28 .img img{
29     width: 100%;
30     height: 100%;
31 }
32 .describe{
33     display: inline-block;
34     font-family: cursive;
35     font-weight: 350;
36     font-size:15px;
37     padding-top: 12px;
38 }
39 .name{
40     display: block;
41     margin-left: 8px;
42     margin-top: 0px;
43 }
44 .num{
45     display: block;
46     margin-left: 8px;
47     margin-top: 10px;
48 }
49 .price{
50     display: block;
51     margin-left: 8px;
52 }
53 .price span{
54     font-size: 22px;
55     font-weight: 650;
56     color: red;
57 }
58 .status{
59     display: block;
60     margin-left: 8px;
61     margin-top: 10px;
62 }
63 .btn{
64     margin-top: 8px;
65     margin-left: 70px;
66     margin-bottom: 15px;
67 }

二、利用JQuery动态生成页面

css+div搭建好订单展示块之后就可以动态生成了。

首先,跳转到我的当前页面之后,我的页面什么也没有,只有一个最外层的框架,如下图:

 

而我写了一个页面跳转即执行的js函数,用于从后台获取数据并生成页面。

 

当我们利用ajax从后台获取数据(JSON字符串)之后,先用JSON.parse()转换成js对象,再获取该json对象的长度,这个长度即代表有几个div订单区块。

一切准备好之后,就可以用jQuery遍历追加了。但是不急,我们一步一步来。

首先,我们还是先追加最大的div框架,

 

 添加完之后,再用jQuery遍历抓取更深层次的元素设置事件属性、设置文本等操作。

 

 

总结:动态生成网页大致只有这些内容,刚开始肯定不熟练,但是肯定熟能生巧啊,多写几个网页练一下,不成问题的。

下面有我项目文件的链接和提取码。

 

 

附其他功能效果图:

购物车页面:

 

订单详情页面:

 

商品购买页面:

 

 

商家添加商品页面:

 

 

商品管理页面:

 

 

用户还可以更换头像:

 

posted @ 2020-02-11 19:11  公鸡不下蛋  阅读(592)  评论(1编辑  收藏  举报