在<script>中利用window.location.href=‘‘传递多个参数方法

本文介绍了如何使用JavaScript通过`window.location.href`向目标URL传递多个变量参数,同时提到通过`getElementById`获取元素值时如何隐藏`<input>`标签以避免显示。

一、可以通过window.location.href=''传递多个变量参数

<script>
            function submit() {
                /*根据id获取元素值再定义变量获取值*/
                var textValue=document.getElementById("btn").value;
                var type_id=document.getElementById("type_id1").value;
                /*使用下面的方法进行页面跳转,页面跳转的时候可以带参数,所以就可以提交数据*/
                /*这里的地址可以是任意的地址,包括提交路径等!*/
                window.location.href='${ctx}/admin/type?action=update&name='+textValue+'&id='+type_id;
            }
        </script>

二、在通过getElementById获取元素值时,如果想获取元素而不显示标签时,可以通过添加<input   value=''>标签,而不让input标签显示,通过<input>标签的display:none属性设置

<input id="type_id1" style="display: none" value="${g.id}">

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta charset="utf-8"> <!--字体图标--> <link href="${pageContext.request.contextPath}/javaex/pc/css/icomoon.css" rel="stylesheet" /> <!--动画--> <link href="${pageContext.request.contextPath}/javaex/pc/css/animate.css" rel="stylesheet" /> <!--骨架样式--> <link href="${pageContext.request.contextPath}/javaex/pc/css/common.css" rel="stylesheet" /> <!--皮肤(缇娜)--> <link href="${pageContext.request.contextPath}/javaex/pc/css/skin/tina.css" rel="stylesheet" /> <!--jquery,不可修改版本--> <script src="${pageContext.request.contextPath}/javaex/pc/lib/jquery-1.7.2.min.js"></script> <!--全局动态修改--> <script src="${pageContext.request.contextPath}/javaex/pc/js/common.js"></script> <!--核心组件--> <script src="${pageContext.request.contextPath}/javaex/pc/js/javaex.min.js"></script> <!--表单验证--> <script src="${pageContext.request.contextPath}/javaex/pc/js/javaex-formVerify.js"></script> <title>后台管理</title> <script type="text/javascript"> $(document).ready(function () { if(${empty bookList}){ window.document.location.href = "${pageContext.request.contextPath}/book?method=getBookList&currentPage=1" } }); </script> </head> <body> <!--主体内容--> <div class="list-content"> <!--块元素--> <div class="block"> <!--页面有多个表格时,可以用于标识表格--> <h2>图书列表</h2> <!--右上角的返回按钮--> <a href="javascript:history.back();"> <button class="button indigo radius-3" style="position: absolute;right: 20px;top: 16px;"><span class="icon-arrow_back"></span> 返回</button> </a> <!--正文内容--> <div class="main"> <!--表格上方的搜索操作--> <div class="admin-search"> <div class="input-group"> <input id="keyword" type="text" class="text" placeholder="提示信息" /> <button id="searchBtn" class="button blue" onclick="search();">搜索</button> </div> </div> <!--表格上方的操作元素,添加、删除等--> <!-- <div class="operation-wrap"> <div class="buttons-wrap"> <button class="button blue radius-3"><span class="icon-plus"></span> 添加</button> <button class="button red radius-3"><span class="icon-close2"></span> 删除</button> </div> </div> --> <table id="table" class="table color2"> <thead> <tr align="center"> <th>序号</th> <th>书名</th> <th>作者</th> <th>ISBN</th> <th>页数</th> <th>定价</th> <th>出版社</th> <th>出版时间</th> <th>库存数量</th> <th>翻译</th> <th>分类</th> <th>操作</th> </tr> </thead> <tbody id="tbody"> <!--C标签循环--> <c:forEach items="${bookList}" var="bk"> <tr> <td class="checkbox"> <input type="checkbox" class="fill list-1-2"> </td> <td>${bk.name}</td> <td>${bk.author}</td> <td>${bk.isbn}</td> <td>${bk.pages}</td> <td>${bk.price}</td> <td>${bk.publish}</td> <td>${bk.publish_time}</td> <td>${bk.size}</td> <td>${bk.translate}</td> <td>${bk.type}</td> <td> <!--先调用js中updateBook函数再去发送请求getUpdateBook--> <button class="button blue"onclick ="updateBook(${bk.id});">编辑</button> <button class="button red"onclick="delBook(${bk.id});">删除</button> </td> </tr> </c:forEach> </tbody> </table> <!--1.分页组件--> <div class="page"> <ul id="page" class="pagination"> <!--上一页--> <c:choose> <c:when test="${bookPage.currentPage==1}"> <li><a href="#">上一页</a></li> </c:when> <c:otherwise> <li><a href="javascript:setPage(${bookPage.currentPage-1});">上一页</a></li> </c:otherwise> </c:choose> <!--中间页码--> <c:forEach begin="1" end="${bookPage.totalPage}" var="p"> <c:choose> <c:when test="${p==bookPage.currentPage}"> <li class="select"><a href="javascript:setPage(${p});">${p}</a></li> </c:when> <c:otherwise> <li class="hint"><a href="javascript:setPage(${p});">${p}</a></li> </c:otherwise> </c:choose> </c:forEach> <!--下一页--> <c:choose> <c:when test="${bookPage.currentPage==bookPage.totalPage}"> <li><a href="#">下一页</a></li> </c:when> <c:otherwise> <li><a href="javascript:setPage(${bookPage.currentPage+1});">下一页</a></li> </c:otherwise> </c:choose> </ul> </div> </div> </div> </div> <script type="text/javascript"> // 页面一加载, 展示数据列表, 每页10条 $(document).ready(function(){ // 默认查询所有 //rander(1,"",10); }); // 渲染数据表格 function rander(currPage,keyword,pageSize) { // 定义全局 分页属性 $.ajax({ //请求方式 type : "POST", //请求的媒体类型 contentType: "application/json;charset=UTF-8", //请求地址 url : "/book/list", //数据,json字符串 data : JSON.stringify({"currPage":currPage,"keyword": keyword,"pageSize": pageSize}), //请求成功 success : function(result) { console.log(result); // 获取集合属性 var r = result.data; var total = r.total; var currPage = r.currPage; var pageSize = r.pageSize; // 分页信息 console.log("currPage:"+r.currPage+"\t pageSize:"+r.pageSize+"\t total:"+r.total); var array = r.list; var text = ""; $.each(array,function(index,value){ console.log(value); var num = pageSize * (currPage - 1) + index + 1; text+= "<tr align='center'><td>"+num+"</td><td>"+value.name+"</td><td>"+value.author+"</td><td>"+value.isbn+"</td>" + "<td>"+value.pages+"</td><td>"+value.price+"</td><td>"+value.publish+"</td><td>"+value.publishTime+"</td>" + "<td>"+value.size+"</td><td>"+value.translate+"</td><td>"+value.type+"</td><td>"+ "<button class='button blue empty' onclick='updateBook("+value.id+")'>编辑</button>  <button class='button yellow empty' onclick='delBook("+value.id+")'>删除</button></td></tr>"; }); $("#tbody").html(text); // 向上取整去总页数 var totalPage = Math.ceil(total/pageSize); console.log("totalPage:"+totalPage); // 清空分页组件 $("#page").empty(); // 调用分页组件 javaex.page({ id : "page", pageCount : totalPage, // 总页数 currentPage : currPage,// 默认选中第几页 perPageCount : pageSize , // 每页显示多少条,不填时,不显示该条数选择控件 isShowJumpPage : false, // 是否显示跳页 totalNum : total, // 总条数,不填时,不显示 position : "center", callback : function(rtn) { // 翻页 rander(rtn.pageNum,keyword,rtn.perPageCount); } }); }, //请求失败,包含具体的错误信息 error : function(e){ console.log(e.status); console.log(e.responseText); } }); } // 搜索 function search() { // 获取搜索关键字 var keyword = $("#keyword").val(); // 搜索结果渲染表格 // rander(1,keyword,10); //根据搜索值、当前页码、请求内容搜索内容 window.location.href="${pageContext.request.contextPath}/book?method=searchBook&currentPage=1&keyWord="+keyword; } //分页函数 function setPage(currentPage) { //判断是否为搜索功能获取数据 if (${kwd == null}){// 正常的数据 window.location.href = "${pageContext.request.contextPath}/book?method=getBookList&currentPage="+currentPage; } else{//搜索数据 window.location.href ="${pageContext.request.contextPath}/book?method=searchBook&currentPage="+currentPage+"&keyWord=${kwd}"; } // 编辑 function updateBook(id) { //控制台日志(“update Book 10”) console.log("update Book"+id); //发送请求 window.location.href="${pageContext.request.contextPath}/book?method=getUpdateBook&id="+id; } // 删除 function delBook(id) { console.log("delete Book"+id); javaex.confirm({ content : "确定要删除么", callback : "delCallback("+id+")" }); } function delCallback(id) { // 1.修改请求 bmsw/book $.get("${pageContext.request.contextPath}/book",{"method":"delBook","id": id}, function(data){ var code = data.code; if (code == 200) { javaex.message({ content : "删除成功", type : "success" }); // 删除成功, 刷新页面 setTimeout(function(){ window.location.reload(); },1500) } }); // 如果你想阻止弹出层关闭,直接 return false; 即可 //return false; }} </script> </body> </html> 完善上述代码使图书列表能在网页中显示出来
06-19
<%@ page import="util.DbConnet" %> <%@ page import="java.sql.ResultSet" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <% //获取用户输入的查询内容 String appliance_id = request.getParameter("appliance_id"); if(appliance_id==null) appliance_id=""; String appliance_type = request.getParameter("appliance_type"); if(appliance_type==null) appliance_type=""; String appliance_name = request.getParameter("appliance_name"); if(appliance_name==null) appliance_name=""; //1.数据总数 String sql = "select count(*) as total from `living_room_appliances` " + "where `appliance_id` like ? and `appliance_type` like ? and `appliance_name` like ?;"; Object[] params = new Object[]{ "%"+appliance_id+"%","%"+appliance_type+"%","%"+appliance_name+"%" }; ResultSet rs = DbConnet.select(sql, params); rs.next(); int total = rs.getInt("total"); //2.每页显示的行数 int pageSize = 5; //3.总页数 double result = (double)total/pageSize; //向上取整:只要数值带有有效的小数,舍去小数,整数位加一 int pageTotal = (int) Math.ceil(result); //4.当前页码 String pageNoStr = request.getParameter("pageNo"); pageNoStr = pageNoStr==null?"1":pageNoStr; int pageNo = Integer.parseInt(pageNoStr); //获取用户表中的数据,显示出来 sql = "select * from `living_room_appliances` " + "where `appliance_id` like ? and `appliance_type` like ? and `appliance_name` like ?" + "limit ?,?;"; int start = (pageNo - 1) * pageSize;//(当前页码-1)*每页显示的行数 params = new Object[]{ "%"+appliance_id+"%","%"+appliance_type+"%","%"+appliance_name+"%",start,pageSize }; rs = DbConnet.select(sql, params); %> <html> <head> <title>用户列表</title> <link rel="stylesheet" href="../css/common.css"> <link rel="stylesheet" href="../css/list.css"> </head> <body> <%--搜索区域 S--%> <div class="search"> <form> <label for="appliance_id">账号:</label> <input type="text" id="appliance_id" name="appliance_id" value="<%=appliance_id%>"> <label for="appliance_type">姓名:</label> <input type="text" id="appliance_type" name="appliance_type" value="<%=appliance_type%>"> <label for="appliance_name">姓名:</label> <input type="text" id="appliance_name" name="appliance_name" value="<%=appliance_name%>"> <button id="btnSearch" class="primary" type="button">查询</button> <button id="btnReset" type="button">重置</button> </form> </div> <%--搜索区域 E--%> <%--按钮区域 S--%> <div class="btn-box"> <button id="btnAdd" class="primary" type="button">新增</button> </div> <%--按钮区域 E--%> <%--表格区域 S--%> <div class="table-box"> <table> <tr> <th>编号</th> <th>账号</th> <th>姓名</th> <th>操作</th> </tr> <% while (rs.next()){ %> <tr> <td><%=rs.getString("appliance_id")%></td> <td><%=rs.getString("appliance_type")%></td> <td><%=rs.getString("appliance_name")%></td> <td> <button data-id="<%=rs.getString("id")%>" name="btnEdit" class="primary" type="button">编辑</button> <button data-id="<%=rs.getString("id")%>" name="btnDelete" class="danger" type="button">删除</button> </td> </tr> <% } %> </table> </div> <%--表格区域 E--%> <%--页码区域 S--%> <%--<div class="pager">--%> <%-- <ul>--%> <%-- <li>共<%=total%>条数据/每页<%=pageSize%>条</li>--%> <%-- <% if(pageNo>1){%>--%> <%-- <li class="page"><a href="list.jsp?username=<%=username%>&realname=<%=realname%>&pageNo=1">首页</a></li>--%> <%-- <li class="page"><a href="list.jsp?username=<%=username%>&realname=<%=realname%>&appliance_name<%appliance_name%>&pageNo=<%=pageNo-1%>">上一页</a></li>--%> <%-- <% } %>--%> <%-- <%– <li class="active">1</li>–%>--%> <%-- <% for (int i=1;i<=pageTotal;i++){%>--%> <%-- <li class="<%=(pageNo==i?"active":"")%>" class="page">--%> <%-- <a href="list.jsp?username=<%=username%>&realname=<%=realname%>&pageNo=<%=i%>"><%=i%></a>--%> <%-- </li>--%> <%-- <% } %>--%> <%-- <% if(pageTotal>pageNo){%>--%> <%-- <li class="page"><a href="list.jsp?username=<%=username%>&realname=<%=realname%>&pageNo=<%=pageNo+1%>">下一页</a></li>--%> <%-- <li class="page"><a href="list.jsp?username=<%=username%>&realname=<%=realname%>&pageNo=<%=pageTotal%>">尾页</a></li>--%> <%-- <% } %>--%> <%-- </ul>--%> <%--</div>--%> <%--页码区域 E--%> <script src="../js/jquery-3.5.1.min.js"></script> <script src="../js/common.js"></script> <script> //绑定搜索按钮的点击事件 $('#btnSearch').on('click', function () { //获取搜索框中的内容:账号、姓名 let username = $('#username').val(); let realname = $('#realname').val(); window.location.href="list.jsp?username=" + username + "&realname=" + realname; }); //绑定重置按钮的点击事件 $('#btnReset').on('click', function () { window.location.href="list.jsp"; }); //绑定新增按钮的点击事件 $('#btnAdd').on('click', function () { window.location.href="add.jsp"; }); //绑定行内的编辑按钮点击事件 $('button[name=btnEdit]').on('click', function () { let id = $(this).attr('data-id');//从当前点击的按钮身上获取data-id的值 window.location.href = 'edit.jsp?id='+id; }); //绑定行内的删除按钮点击事件 $('button[name=btnDelete]').on('click', function () { if(confirm("确定要删除吗?")) { //获取删除按钮所在行的编号(id) let id = $(this).attr('data-id');//从当前点击的按钮身上获取data-id的值 //无刷新方式提交删除请求 postAction('/user/delete', {id: id}, function (res) { alert(res.msg); if (res.result) window.location.href = res.url; }); } }); </script> </body> </html> 请修改这些代码的错误
最新发布
07-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值