JSTL和Ajax小计

JSTL

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

JSTL标签第一个不用解释,第二个为时间的使用下面用代码块演示,prefix所定义的字母是可以随便改的,但是后面的引用也需要更改比如下面这段代码的<c:forEach

 <c:forEach items="${list}" var="admin" varStatus="vs">
                    <tr>
                        <td>${vs.count }</td>
                        <td>${admin.name }</td>
                        <td>${admin.admin }</td>
                        <td>${admin.phone}</td>
                        <td><fmt:formatDate value="${admin.time }"
                                            pattern="yyyy-MM-dd"></fmt:formatDate></td>
                        <td>
                            <c:choose>
                                <c:when test="${admin.role == 5 }">
                                    <a class="summary"  onmouseover="showDetail(true,this);"
                                       onmouseout="showDetail(false,this);">超级管理员</a>
                                    <!--浮动的详细信息-->
                                    <div class="detail_info"> 超级管理员</div>
                                </c:when>
                                <c:when test="${admin.role== 6 }">
                                    <a class="summary"  onmouseover="showDetail(true,this);"
                                       onmouseout="showDetail(false,this);">后台管理员</a>
                                    <!--浮动的详细信息-->
                                    <div class="detail_info"> 后台管理员</div>
                                </c:when>
                                <c:when test="${admin.role== 7 }">
                                    <a class="summary"  onmouseover="showDetail(true,this);"
                                       onmouseout="showDetail(false,this);">业务管理员</a>
                                    <!--浮动的详细信息-->
                                    <div class="detail_info">业务管理员</div>
                                </c:when>
                                <c:when test="${admin.role== 8 }">
                                    <a class="summary"  onmouseover="showDetail(true,this);"
                                       onmouseout="showDetail(false,this);">资费管理员</a>
                                    <!--浮动的详细信息-->
                                    <div class="detail_info">资费管理员</div>
                                </c:when>
                            </c:choose>

                        </td>
                        <td class="td_modi">
                            <input type="button" value="修改" class="btn_modify"
                                   onclick="location.href='admin_modi.html?id=${admin.id}';" />
                            <input type="button" value="删除" class="btn_delete"
                                   onclick="location.href='delete.html?id=${admin.id}';"/>
                        </td>
                    </tr>
                </c:forEach>

ajax样例

function searchAccounts(txtObj) {
            $.post(
                'searchAccounts.html',
                {'account':$(".account").val()},
                function (data) {
                },
                'json'
            );
        }

当引用ajax时controller层需要加上注解,演示如下

//利用AJAX进行用户名是否存在的校验
    @RequestMapping("/search.html")
    @ResponseBody
    public String search (@RequestParam("name")String name) {
        // 接收前端输入的用户名
        User userEntiy = new User();
        userEntiy.setName(name);
        User userName=userService.search("UsrMapper.search",userEntiy);
        if(userName!=null){
            return "fail";
        }
        return null;
    }

查询账号是否存在的ajax案例和密码两次输入是否一致的校验

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%--
  Created by IntelliJ IDEA.
  User: Administrator
  Date: 2018/12/5
  Time: 18:05
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link href="../css/css.css" rel="stylesheet" type="text/css" />
    <link href="../css/common.css" rel="stylesheet" tyle="text/css" />
    <script src="../js/jquery-1.9.1.min.js" type="text/javascript"></script>
    <script src="../js/jquery.SuperSlide.2.1.1.js" type="text/javascript"></script>
    <script src="../js/common_js.js" type="text/javascript"></script>
    <title>用户注册</title>
    <%--<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery-1.4.3.js"></script>--%>
    <script type="text/javascript">

        //自动查询账务账号
       $(function()
       {
           $("#name").blur(function()
           {
               var name = $(this).val();

               if(name=="")
               {
                   $("#remind").html("用户名不能为空");
               }
               else
                   {
                       var url="<%=request.getContextPath()%>/tea/search.html";  // 请求的url
                       $.post(
                           url,
                           {'name':name},
                           function (data)
                           {
                               if(data=="fail")
                                {
                                 $("#remind").html("用户名已存在");
                                }
                               else {
                               $("#remind").html("用户名可用");
                                }

                            }
                       );
                    }
           });



        });
       //两次密码是否相同的校验
        function validate() {

            var pwd = $("#pwd").val();
            var pwd1 = $("#pwd1").val();
            <!-- 对比两次输入的密码 -->
            if(pwd == pwd1)
            {
                $("#tishi").html("两次密码相同");
                $("#tishi").css("color","green");
                $("#xiugai").removeAttr("disabled");
            }
            else {
                $("#tishi").html("两次密码不相同");
                $("#tishi").css("color","red")
                $("button").attr("disabled","disabled");
            }
        }
        //邮箱的正则表达验证
        function test(mail) {
            var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
            if (filter.test(mail)) {
                $("#email").css("color","green");
                $("#email").html("邮箱地址正确");
            } else {
                $("#email").css("color","red");
                $("#email").html("邮箱地址错误请重新输入");
            }
        }

        //注册提交
        function submit()
        {
            $("#form1").submit();
        }




    </script>
</head>

<body>
<!--顶部样式-->
<div class="common_top">
    <div class="Narrow">
        <div class=" left logo"><a href="#"><img src="../images/logo.png" /></a></div>
        <!--电话图层-->
        <div class="phone"><label>全国服务热线:</label><em>400-345-5633</em></div>
    </div>
</div>
<!--用户注册样式-->
<div class="registered_style Narrow clearfix">
    <div class="left_advertising">
        <img src="../images/bg_03.png" />
    </div>
    <div class="right_register">
        <div class="register_Switching" id="register_Switching">
            <div class="hd">
                <ul><li>快速注册</li><li>普通注册</li></ul>
            </div>
            <div class="bd">
                <ul>
                    <form id="form1" name="form1" method="post" action="registeredhold.html">
                        <div class="form clearfix">
                            <div class="item"><label class="rgister-label">&nbsp;&nbsp;&nbsp;&nbsp;号:</label><input name="" type="text"  class="text" /></div>
                            <div class="item"><label class="rgister-label" >&nbsp;&nbsp;&nbsp;&nbsp;码:</label><input name="" type="text"  class="text" /><a class="phone_verification">获取验证码</a></div>
                            <div class="item-ifo">
                                <input type="checkbox" class="checkbox left" checked="checked" id="readme" onclick="agreeonProtocol();">
                                <label for="protocol" class="left">我已阅读并同意<a href="#" class="blue" id="protocol">《福际商城用户注册协议》</a></label>
                            </div>
                        </div>
                        <div class="rgister-btn">
                            <a href="javascript:;" class="btn_rgister">&nbsp;&nbsp;&nbsp;&nbsp;</a>
                        </div>
                        <div class="Note"><span class="login_link">已是会员<a href="login.html">请登录</a></span></div>
                    </form>
                </ul>
                <ul>
                    <form id="form1" name="form1" method="post" action="registeredhold.html">
                        <div class="form clearfix">
                            <div class="item"><label class="rgister-label">&nbsp;&nbsp;&nbsp;&nbsp;名:</label><input name="name" id="name" type="text"  class="text" /><span id="remind"></span><b>*</b></div>
                            <div class="item"><label class="rgister-label" >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;码:</label><input  name="pwd" id="pwd"type="password"  class="text" οnkeyup="validate()"/><b>*</b></div>
                            <div class="Password_qd"><ul><li class="r"></li><li class="z"></li><li class="q"></li></ul></div>
                            <div class="item"><label class="rgister-label " >确认密码:</label><input  name="pwd" id="pwd1"type="password"  class="text"  οnkeyup="validate()" /><span id="tishi"/><b>*</b></div>
                            <div class="item"><label class="rgister-label" >电子邮箱:</label><input name="" type="text"  class="text" onkeyup="test(this.value)"/><span id="email"/><b>*</b></div>
                            <div class="item "><label  class="rgister-label ">&nbsp;&nbsp;码:</label><input name="" type="text"  class="Recommend_text" /></div>
                            <div class="item-ifo">
                                <input type="checkbox" class="checkbox left" checked="checked" id="readme" onclick="agreeonProtocol();">
                                <label for="protocol" class="left">我已阅读并同意<a href="#" class="blue" id="protocol">《福际商城用户注册协议》</a></label>
                            </div>
                        </div>
                        <div class="rgister-btn">
                            <a href="javascript:;"  onclick="submit()" class="btn_rgister">&nbsp;&nbsp;&nbsp;&nbsp;</a>
                        </div>
                        <div class="Note"><span class="login_link">已是会员<a href="login.html">请登录</a></span></div>
                    </form>
                </ul>
            </div>
        </div>
        <script>jQuery(".register_Switching").slide({trigger:"click"});</script>
    </div>
</div>
<!--底部样式-->
<div class="bottom_footer">
    <p><a href="#">关于我们</a> | <a href="#">联系我们</a> | <a href="#">商家入驻</a> | <a href="#">法律申明</a> | <a href="#">友情链接</a>  </p>
</div>
</body>
</html>

仍有疑问可以加QQ275375496讨论

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>动漫搜索</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> <script type="text/javascript"> var xmlhttp; function loadXMLDoc(url,cfun) { // alert("hadhfaf"); xmlhttp=new XMLHttpRequest(); xmlhttp.onreadystatechange=cfun; xmlhttp.open("GET",url,true); xmlhttp.send(); } function myfunction(id,times) { //alert("123"); loadXMLDoc("open.jsp?id="+id+"&times="+times+"&t="+Math.random(),function() { //alert(xmlhttp.status); if(xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById(id).innerHTML=xmlhttp.responseText; } }); } </script> <% //currentPage当前显示页数 if (request.getParameter("currentPage") == null||request.getParameter("currentPage").equals("")) { pageContext.setAttribute("currentPage", new Integer(0)); } else { pageContext.setAttribute("currentPage", request .getParameter("currentPage")); } %> <sql:query var="rs" dataSource="jdbc/mysql"> select* from anime </sql:query> <!-- 得到所有记录数 --> <c:set var="resultNum"> <jsp:getProperty name="rs" property="rowCount" /> </c:set> <!-- 每页显示记录数 --> <c:set var="PerPageNum" value="3" /> </head> <style type="text/css"> body{background-color:} </style> <body> <% int perPageNum = Integer.parseInt((String) pageContext .getAttribute("PerPageNum")); int resultNum = Integer.parseInt((String) pageContext .getAttribute("resultNum")); int pageNum; //如果所有记录数除每页显示记录数没有余数-1 if((int)resultNum%perPageNum==0) pageNum = (int)(resultNum / perPageNum-1); else pageNum = (int)(resultNum / perPageNum); pageContext.setAttribute("pageNum", pageNum); %> <div style="border:1px solid #cccccc; width:1100px;margin:100px 0 0 90px"> <table style=" width:1100px;"> <tr> <td>序号</td> <td>热搜动漫</td> <td>动漫简介</td> <td>更新集数</td> <td>搜索指数</td> <td>动漫详情</td> </tr> <c:if test="${currentPage lt 0 }"><!-- 当前显示页小于0 --> <c:set var="currentPage" value="0"></c:set> </c:if> <c:if test="${currentPage gt pageNum}"><!-- 当前显示页大于总页数 --> <c:set var="currentPage" value="${pageNum }"></c:set> </c:if> <c:set var="currentPage" value="${currentPage}" scope="session" /> <!-- 循环查找记录 --> <c:forEach var="row" items="${rs.rows}" begin="${currentPage*PerPageNum}" end="${PerPageNum+currentPage*PerPageNum-1}" > <tr> <td> ${row.id }</td> <td> <img src="image/${row.image}" width="50" height="50"/></td> <td style="width:600"> ${row.introduce}</td> <td> ${row.blues} </td> <td> ${row.times }</td> <c:set var="times" value="${row.times }" scope="session" /> <td> <input type="button" value="展开" onclick="myfunction(${row.id },${row.times })"/> </td> </tr> <tr> <td colspan=6 id="${row.id}"></td> </tr> </c:forEach> </table> <div style="margin:0px 0px 0px 800px"> 总共有${pageNum+1}页-第${currentPage+1}页-<a href="index.jsp?currentPage=${currentPage-1}">上一页</a> - <a href="index.jsp?currentPage=${currentPage+1}">下一页</a> </div> </div> </body> </html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值