文档章节

暑假学习16(7.31 周五)

w
 woshiwei
发布于 2015/08/03 20:31
字数 1561
阅读 21
收藏 0

           今天的工程学习主要是将之前静态的商品类型改为动态的商品类型,也就是说这部分的数据源要来自于数据库,不再是之前写好的一个无序列表,对比之前的菜单栏更具灵活性。之前的菜单每一项是这样写的:

<li th:class="${goodsForm.type == '粮食'}?'active':''"><a href="initGoods?type=liangshi">粮食</a></li>

         注意使用的是th:class这个属性,这个属性可以用来判断当前项是否是要被选中的,这里可以是一个动态的判断,就是将后台传过来的两个值判断然后选择要呈现的状态,如 改过之后的写法是:

<li th:class="${goodsForm.type}==${typeinfo.type}?'active':''"><a href="initGoods?type=typeinfo.type"><span th:text="${typeinfo.type}" th:each="typeinfo,status:${typelist}"></span></a></li>   

      这个是一个循环的无序列表项,它将选择的商品类型列出来出现在标签上。要是想默认选中的话,只要第一次默认时选中商品类型的第一项就可以了,我们可以通过列表的get方法来取得第一项。不过我们查询也可以通过sql语句的最小最大查询,使用min与max函数,写法如下:

select max(age) from sturent(这样可以找到学生表中的年最大的年龄)              

        然后通过嵌套查询找到相应的结果。另外,在使用查询时,我们也可以通过order  by(对应的列名)子句来选择相应的大小。其中,asc是升序,desc为降序。

        注意下面这句代码的使用,这个代码的使用时为了使前台的汉字传过来能在后台接收到而且成为utf-8的格式,也就是说实现了一个汉字格式的转换

        String type = new String(goodsForm.getType().getBytes("iso8859-1"),"utf-8");  

         对于ISO8859-1,通常叫做Latin-1。Latin-1包括了书写所有西方欧洲语言不可缺少的附加字符。而gb2312是标准中文字符集。UTF-8是UNICODE的一种变长字符编码,即RFC3629。简单的说——大字符集。可以解决多种语言文本显示问题,从而实现应用国际化和本地化。对系统来讲,UTF-8编码可以通过屏蔽位和移位操作快速读写,排序更加容易。UTF-8是字节顺序无关的,它的字节顺序在所有系统中都是一样的。因此UTF-8具有更高的性能。

        css中的一些属性设置:letter-spacing: -1px;(字间距)font-size:2em;(字体大小)font-weight : normal;(字体权重:常有的值有normal: 正常的字体。 bold: 粗体。 bolder: 特粗体。 lighter: 细体).span_2_of_3  h3,span_2_of_3  p(这两个是名称一样的样式表,引用时都是用class="span2_of_3",但是二者是用来定义两个不同的部分,前者是标题,后者是段落内容)line-height: 1.6em; (这个是定义行间距)。align是对齐格式:align=left,center,right,分别是左对齐,居中,右对齐,默认是左对齐还有就是<div class="clear"></div>这个是用来清除浮动的。在shop/css中定义:.clear{clear:both;}/* clear float */

       HTML中下拉列表写法:

    <select name="">
        <option value="0">divcss5</option>
        <option value="1">DIVCSS5</option>

    </select>

      下面使用的spring框架中的<form:select>标签写的下拉列表框:

<form:select path="expressId">

<form:options id="expressId" items="${expressList}" itemLabel="label" itemValue="value" />

</form:select>

       区别是item项,这个是一个循环的显示多个可选项,每一项都有一个itemLable与itemValue属性,前面的是显示在页面上的文字,后面是该项的传入值,这里的path是expressId,所以选中一项会将该项的value值给expressId。

<a class="btn btn-danger" onclick="showDialog('delBrand?supplierId=${brandsInfo.supplierId}&brandId=${brandsInfo.brandId}')" href="#" data-toggle="modal" data-target="#myModal"> <i  class="glyphicon glyphicon-trash icon-white"></i> 删除</a>

     为HTML文档的创作者定义他们自己的属性,须以 "data-" 开头。这里的dialog在下边出现了,data_target属性和下边的id的值相同,通过这个来联系到下边的dialog部分,注意出现了role属性(这个??):

<div class="modal fade" id="myModal" tabindex="-1" role="dialog"

aria-labelledby="myModalLabel" aria-hidden="true">

<div class="modal-dialog">

<div class="modal-content">

<div class="modal-header">

<button type="button" class="close" data-dismiss="modal">×</button>

<h3>确认删除</h3>

</div>

<div class="modal-body">

<p>该内容删除后不可恢复,请确认是否删除!</p>

</div>

<div class="modal-footer">

<a href="#" class="btn btn-default" data-dismiss="modal">取消</a>

<a id="modalLink" href="delCar" class="btn btn-primary">删除</a>

</div>

         这里的showDialog是一个javascript的脚本文件,代码如下:

<script src="js/bootstrap-datepicker.js"></script>

<script type="text/javascript">

function showDialog(url) {

$("#modalLink").attr("href", url);         //这里是点击删除时对应的链接传值,将对应的值传到后台执行删除操作。

}

</script>

           改变一个按钮的功能成为一个下拉列表:

 <button class="btn btn-default dropdown-toggle"

                    data-toggle="dropdown">         //自定义的下拉列表

                    <i class="glyphicon glyphicon-tint"></i><span

                        class="hidden-sm hidden-xs"> Change Theme / Skin</span> <span

                        class="caret"></span>

                </button>

                <ul class="dropdown-menu" id="themes">     //用一个无序列表来定义下拉菜单

                    <li><a data-value="classic" href="#"><i class="whitespace"></i>   //data-value这个值用来改变当前属性(当前的修改页面主题的,这个会导致一系列的class变化)

                            Classic</a></li>

                    <li><a data-value="cerulean" href="#"><i

                            class="whitespace"></i> Cerulean</a></li>

                    <li><a data-value="cyborg" href="#"><i class="whitespace"></i>

                            Cyborg</a></li>

                    <li><a data-value="simplex" href="#"><i class="whitespace"></i>

                            Simplex</a></li>

                    <li><a data-value="darkly" href="#"><i class="whitespace"></i>

                            Darkly</a></li>

                    <li><a data-value="lumen" href="#"><i class="whitespace"></i>

                            Lumen</a></li>

                    <li><a data-value="slate" href="#"><i class="whitespace"></i>

                            Slate</a></li>

                    <li><a data-value="spacelab" href="#"><i

                            class="whitespace"></i> Spacelab</a></li>

                    <li><a data-value="united" href="#"><i class="whitespace"></i>

                            United</a></li>

                </ul>

            </div>

             在web.xml文件中,那个filter过滤器设置了后台传入数据的类型是utf-8,具体代码如下:

<filter>

<filter-name>CharacterEncodingFilter</filter-name>

<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>utf-8</param-value>

</init-param>

</filter>

            但是,在这个过滤中仅针对post方法传值起到了作用,而对于get方法的传值并没有,所以通过get方法传入的汉字在后台显示的仍然是乱码,所以,我们需要将得到的乱码就是改变格式,通过 new String()方法,即:

String type = new String(goodsForm.getType().getBytes("iso8859-1"),"utf-8"); 


            


© 著作权归作者所有

w
粉丝 18
博文 97
码字总数 51693
作品 0
西青
程序员
私信 提问
加载中

评论(0)

李雯 2017-8-30 工作日报

8:00~8:30 業務内容: 1>处理本味网络订单13张 成果: 1.友盛売上伝票13张 2.友利売上伝票13张 3.友利仕入13张 4.送り状13张 5.振替伝票0张 8:30~12:00 業務内容: 根据9.11楽天2017.7.26-8.10入...

ribunn
2017/08/30
1
0
李雯 2017-9-14 工作日报

8:00~10:00 業務内容: 1>处理本味网络订单18张 成果: 1.友盛売上伝票20张 2.友利売上伝票18张 3.友利仕入20张 4.送り状20张 5.振替伝票1张 10:00~12:00 業務内容: 根据友盛売上和聖元仕入对照...

ribunn
2017/09/14
1
0
打球这十年

打球这十年,更准确说是,打羽毛球这十年。 十月一过后的北京简直冻死了,还没好好感受下秋天的温度就直接冬天了,又是周五,可是因为有伤不能打球。 此情此景,想想打羽毛球已经10个年头了,...

無名小子的杂货铺
2017/10/14
0
0
李雯 2017-9-15 工作日报

8:00~10:00 業務内容: 1>处理本味网络订单17张 成果: 1.友盛売上伝票17张 2.友利売上伝票17张 3.友利仕入17张 4.送り状17张 5.振替伝票1张 10:00~12:00 業務内容: 检查楽天网站套餐信息 午休...

ribunn
2017/09/15
3
0
一年又一年之2017

最近一直都想找个时间做个年度总结,但是一直抽不出时间,今天是周六,反正也没有好好学习,干脆把这个总结提前做了,还有8天时间就2018了,估计也搞不出什么值得总结的事情了。 2017总体上还...

我要活出个人模狗样
2017/12/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

docker容器内apt快速更换国内源

mv /etc/apt/sources.list /etc/apt/sources.list.bakecho "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >> /etc/apt/sources.listecho "deb http://mirrors......

Rhynie
12分钟前
11
0
Handlers与Controls

本教程假设您已经阅读了Leaflet Class Theory 在leaflet中, 一个layer是跟随map移动的任何东西。 与之相反,一个control是对于map容器相对静态的HTML元素(例如,缩放、全屏的按钮都是contr...

东东笔记
13分钟前
19
0
kafka压测之producer

背景 前不久自建了大数据平台,由于时间问题,排期紧张,未能对平台进行压测。现在平台搭建完成,计划对平台组件逐一进行一次压测。 欢迎指正,不喜勿喷! 压测目标 测试Kafka集群写入消息和...

阿dai学长
15分钟前
9
0
DRF: drf_yasg swagger 文档http -> https

drf_yasg 文档https配置 参考 django 配置 settings.py USE_X_FORWARDED_HOST = TrueSECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https') nginx 配置 加入X-Forwarded-Proto在......

hyhlinux
24分钟前
19
0
Docker存储驱动之--overlay2

docker支持多种graphDriver,包括vfs、devicemapper、overlay、overlay2、aufs等等,其中最常用的就是aufs了,但随着linux内核3.18把overlay纳入其中,overlay的地位变得更重,最近也在自己的...

Jack088
25分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部