2017年5月28日,晴,心情还不错。

昨晚和同事撸串,回来后继续威士忌走起,喝到凌晨2点多,聊的甚欢。彼此分享了很多自己成长过程中的故事,相互之间有了进一步的了解,友情又进了一步。在以后的时光里,愿珍惜,共勉,我的朋友们!

昨下午同事胡帮我测了一下自己负责的模块,发现了一些小问题,马上着手修BUG,很快就OK。在修BUG过程中发现了一些很多人会遇到的问题,于是趁端午节之际,写一篇博客供大家参考借鉴!

1.在JSP页面中写判断语句的注意问题

//方法1:使用<c:if>
2 <c:if test=""></c:if >

  //方法2:使用<c:choose>

 <c:choose>
       <c:when test="${roles.dataScope eq '仅自己'}">
<input type="radio" id="dataScope0" name="datascope" value="仅自己" checked>仅自己&nbsp;&nbsp;
<input type="radio" id="dataScope1" name="datascope" value="部门内">部门内&nbsp;&nbsp;
<input type="radio" id="dataScope2" name="" value="指定部门" data-toggle="modal" data-target="#myModal"
onclick="showdept();">指定部门&nbsp;&nbsp;
</c:when>
<c:when test="${roles.dataScope=='部门内'}">
<input type="radio" id="dataScope0" name="datascope" value="仅自己" checked>仅自己&nbsp;&nbsp;
<input type="radio" id="dataScope1" name="datascope" value="部门内" checked>部门内&nbsp;&nbsp;
<input type="radio" id="dataScope2" name="" value="指定部门" data-toggle="modal" data-target="#myModal"
onclick="showdept();">指定部门&nbsp;&nbsp;
</c:when>
<c:otherwise>
<input type="radio" id="dataScope0" name="datascope" value="仅自己">仅自己&nbsp;&nbsp;
<input type="radio" id="dataScope1" name="datascope" value="部门内">部门内&nbsp;&nbsp;
<input type="radio" id="dataScope2" name="" value="指定部门" checked data-toggle="modal" data-target="#myModal"
onclick="showdept();">指定部门&nbsp;&nbsp;
<span id="deptname" style="color:blue;font-weight: bold;">${roles.dataScope}</span>
</c:otherwise>
</c:choose>

注意:test="${roles.dataScope eq '仅自己'}",判断条件必须写在{}之内。

2.Mybatis操作Mysql数据库的配置文件之模糊查询

 <!--按角色名查询-->
<select id="findList" resultType="Role" resultMap="RoleMap">
select * from sys_role
<where>
`status` = 1
<if test="roleName != null and roleName != ''">
and `role_name` LIKE CONCAT(CONCAT('%', #{roleName}), '%')
</if>
</where>
</select>

注意:LIKE CONCAT(CONCAT('%', #{roleName}), '%'),"%"代表查询字段的前面和后面可以有0个或多个其他字符。如果是"-",则表示可以有1个字符。

3.当单击事件时,前面的单选按钮取消选中状态

我做的模块是角色管理模块,在增加页面有一项是数据权限。当用户点击对应按钮把相应的值存入数据表中,但是有一个问题就是如果三个"input"的name都一样的话,当点击下面的指定部门按钮选择相应部门后,存入表中的数据不是对应的部门,而是对应的value值,所以在指定部门单选按钮"input"中我么有给name值。这样的话又会出现一个新的问题,当前面两个单选按钮选中其中一个后,再点击后面的指定按钮,前面的选中状态不会取消,并且存入表中的值也是前面对应单选按钮的值,这与实际情况不符合,所以在选中指定部门后前面的单选按钮的选中状态应该取消。

JSP页面单选按钮代码:

 <input type="radio" id="dataScope0" name="datascope" value="仅自己">仅自己&nbsp;&nbsp;
<input type="radio" id="dataScope1" name="datascope" value="部门内">部门内&nbsp;&nbsp;
<input type="radio" id="dataScope2" name="" value="指定部门" data-toggle="modal" data-target="#myModal"
onclick="showdept();">指定部门&nbsp;&nbsp;
//JS中取消单选按钮选中状态的方法
1 $("#dataScope0").prop("checked",false);
$("#dataScope1").prop("checked",false);

关于在JSP页面用c标签写if语句的更多相关文章

  1. js 和 css 中 不能使用 jsp 页面中一些 标签 和 java 代码等,应注意

    js  和 css 中 不能使用 jsp  页面中一些 标签 和 java 代码等,应注意 如 ${ }  <%%>  等

  2. jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  3. 【转】jsp页面中jstl标签详解

    原文地址: JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实 ...

  4. jsp页面中jstl标签详解[转]

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  5. Java jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  6. jsp页面中自定义标签的小演示

    在实习期遇到公司的pg自定义标签了,同事要我自己自学一下 自定义标签是用户定义的JSP语言元素.当JSP页面包含一个自定义标签时将被转化为servlet.JSP标签扩展可以让你创建新的标签并且可以直接 ...

  7. SSM框架练习之Jsp页面使用taglib标签报错500的问题

    最近在练手一个SSM的基于AdminLET框架模板的后台管理系统,使用的环境是tomcat9,使用Maven构建并通过添加Web模板框架的项目,在添加完所有的配置文件后启动tomcat运行,出现了一个 ...

  8. jsp页面 使用c 标签的 varStatus 属性和 index 解决一行显示多少个 然后进行自动换行

    jsp页面显示,一行有三条记录,自动换行 <c:forEach items="${slist}" var="s" varStatus="stat ...

  9. JSP页面用<a>标签访问 Action 出错

    问题: JSP页面 <a href="/crud1/crud1/add.action" >添加</a> struts.xml 中: <package ...

随机推荐

  1. captcha ~ 生成验证码图片

    验证码在我们的世界中可以保护我们的信息安全的一个保障之一 这就是生成验证码的代码     # 导报 from captcha.image import ImageCaptcha #验证码的包 from ...

  2. defer 的常用场景

    将panic的转化为error类型值,并将其作为函数值返回给调用方 package main import "fmt" func divide(a, b int) (res int ...

  3. POJ 2593

    #include <iostream> #include <stdio.h> using namespace std; int cmp ( const void *a , co ...

  4. Django F()表达式

    Django F()表达式 一个F()对象代表一个模型字段的值或注释列.使用它可以直接引用模型字段的值并执行数据库操作而不用把它们导入到python的内存中. 相反,Django使用F()对象生成一个 ...

  5. Apater适配器模式(结构型模式)

    1.概要 适配:即在不改变原有实现的基础上,将原先不适合的接口转换成适合的接口. what is Apater?适配,这个概念在生活中无处不在,比如你的iphone 4手机充电器坏了,这是时候只有一个 ...

  6. CentOS 7.5 安装与配置 Percona Server 5.7

    个人比较喜欢 MYSQL 的轻量,今天花了一点时间把阿里云上的 MYSQL5.7 换成了 Percona-Server .Percona 是一个开源的 MySQL 衍生版,TokuDB 的数据库引擎使 ...

  7. wordpress获取文章所属分类

    1.获取全部分类 <?php foreach((get_the_category()) as $category){ echo $category->cat_name; } ?> 2 ...

  8. Centos iptables防火墙关闭启动详解

    CentOS .0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下 .直接关闭防火墙 systemctl stop firewalld.service #停止firewal ...

  9. 编译开源C或者C++项目最好像执行如下命令,否则可能会有这种奇葩问题

    find ./ -type f | xargs sed -i 's/\r$//' find ./ -name "*.sh" | xargs chmod +x find ./ -ty ...

  10. es-09-spark集成

    es和spark的集成比较简单, 直接使用内部封装的一些方法即可 版本设置说明: https://www.elastic.co/guide/en/elasticsearch/hadoop/curren ...