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. python面试(3)

    一.语言 推荐一本看过最好的python书籍? 拉开话题好扯淡 谈谈python的装饰器,迭代器,yield? 标准库线程安全的队列是哪一个?不安全的是哪一个?logging是线程安全的吗? pyth ...

  2. ajax 提交添加元素内容

    JS <script type="text/javascript"> $('.Phone_Interview_Comments').click(function () ...

  3. inotify监听文件夹的变动

    inotify只能监控单层目录变化,不能监控子目录中的变化情况.如果需要监控子目录,需要在调用inotify_add_watch(int fd, char *dir, int mask):int建立监 ...

  4. java+hibernate+mysql

    实体类News package org.mythsky.hibernatedemo; import javax.persistence.*; @Entity @Table(name="new ...

  5. list string 互转

    List转字符串,用逗号隔开 List<string> list = new List<string>();list.Add("a");list.Add(& ...

  6. MySQL Replication 详解MySQL数据库设置主从同步的方法

    MySQL同步的流程大致如下:  1.主服务器(master)将变更事件(更新.删除.表结构改变等等)写入二进制日志(master log). 2.从服务器(slave)的IO线程从主服务器(binl ...

  7. C#读取注册表中二进制类型的值(REG_BINARY)

    如需要读取注册表中某个键的值, 例如读取DriverDesc对应的值,一般情况下为String类型,读取代码如下: RegistryKey driverKey = Registry.LocalMach ...

  8. JavaScript事件-this传递

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  9. let‘s encrypt之nginx-https没有小锁

    1.使用let's encrypt 加密后的nginx,访问的时候,发现没有小锁,chrome中: 火狐浏览器上: 会看到如上信息,这是因为css.图片或javascript任然通过http提供,可以 ...

  10. MVC应用程序请求密码的功能(一)

    经过一系列的练习,实现了会员注册<MVC会员注册>http://www.cnblogs.com/insus/p/3439599.html,登录<MVC应用程序实现会员登录功能> ...