当js在jsp页面中写的时候没有任何问题如下所示:

 function deleteP(obj){if(confirm("你真舍得丢弃我吗?")){//发送请求location.href="${pageContext.request.contextPath }/deleteProductById?pid="+obj;}}

但是将js提取出来放到一个单独的js页面中引入的时候,就报错了,这是因为${pageContext.request.contextPath }在js中不起作用

按照下面要求将路径改成绝对路径即可跳转成功

var url = window.location; // 获取当前页面的地址
var protocol = location.protocol //获取http或https
var host = url.host //获取当前JSP页面的地址栏IP和端口号    即://localhost:8080
var contextPath = url.pathname.split("/")[1];  //获取项目名  即:showproduct
var basePath = protocol +"//"+host+"/"+contextPath; //即:http://localhost:8080/showproductfunction deletep(obj){if(confirm("你舍得舍弃我吗?")){location.href=basePath+"/deleteProductById?pid="+obj;}
}

当前页面的网址为:

外部js文件引入

1、直接引用:

  • 根据项目的目录结构,项目目录结构如图: 
     
    引用方式为:

    
    <script type="text/javascript" src="js/jquery-3.0.0.min.js"></script>

2、通过EL表达式引入:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" %><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><c:set value="${pageContext.request.contextPath}" var="path" scope="page"/><script type="text/javascript" src="${path}/js/jquery-3.0.0.min.js"></script>

3、通过java引入:

<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><script type="text/javascript" src="<%=basePath%>/js/jquery-3.0.0.min.js"></script>

JavaWeb中外部引入的js中涉及到location.href的页面跳转/jsp页面的外部js文件引入相关推荐

  1. 关于js中window.location.href、location.href 等如何跳转

    关于js中"window.location.href"."location.href"."parent.location.href".&qu ...

  2. 编写1个JSP页面,在JSP页面中使用Java程序片输出26个小写的英文字母表。

    编写1个JSP页面,在JSP页面中使用Java程序片输出26个小写的英文字母表. <%@ page language="java" contentType="tex ...

  3. js关闭当前页面跳转新页面

    页面代码: 1 <p class="info"><span style="font-weight: bold">所属项目:</sp ...

  4. jsp超链接中怎么跳转页面跳转_JSP页面跳转方法小结

    实现JSP页面跳转,有如下几种方式: n        使用href超链接标记              (客户端跳转) n        使用JavaScript                   ...

  5. 5.21工作记录(修改页面跳转,去掉多余的js;增加图片清除功能)

    导出的war包给测试却发现还是以前的效果,虽然代码都没有问题,而且本地我这里是没有任何问题但是改了的东西在那边未生效 网上说是因为缓存没清干净,然后我去删了本地的全部代码重新导入 删项目重新导的时候发 ...

  6. js如何获取window.location.href跳转后查询字符串的值?

    $("#worked_count").parent().attr("onClick","window.location.href='view/warn ...

  7. html页面判断是手机端访问,JS 判断手机端和pc端后跳转对应页面

    判断手机端和pc端 (function () { var sUserAgent = navigator.userAgent; if (sUserAgent.indexOf('Android') > ...

  8. js页面跳转 和 js打开新窗口方法

    js页面跳转 和 js打开新窗口 方法 Js返回上一页: 1. Javascript 返回上一页 history.go(-1), 返回两个页面: history.go(-2); 2. history. ...

  9. js页面跳转和js打开新窗口

    js页面跳转 和 js打开新窗口 方法 Js返回上一页: 1. Javascript 返回上一页 history.go(-1), 返回两个页面: history.go(-2); 2. history. ...

最新文章

  1. threshold 二值化的实现
  2. 新浪微博瘫痪,有人开心有人哭
  3. hdu 1043 Eight 搜索,哈希
  4. EventBus in SAP UI5 and Kyma
  5. linux weblogic10 安装,linux 静默安装weblogic10.36
  6. dc/os_DC / OS中具有Java和数据库应用程序的服务发现
  7. vue进行判断使用class_vue判断dom的class
  8. LeetCode 82. 删除排序链表中的重复元素 II(链表)
  9. centos7 安装mysql8_CentOS 下 MySQL 8.0 安装部署,超详细!
  10. mingus python_【Python图像特征的音乐序列生成】关于mingus一个bug的修复,兼改进情感模型...
  11. 大淘宝的终极商业阶段
  12. 已解决:setuna2在win10中使用,桌面会自动放大
  13. 常见的Python解释器,你了解多少?
  14. LeetCode算法,多多路上从左到右有N棵树(编号1~N),其中第i个颗树有和谐值Ai。 多多鸡认为,如果一段连续的树,它们的和谐值之和可以被M整除,那么这个区间整体看起来就是和谐的....
  15. 泛微oa服务器文件,泛微oa云服务器要求
  16. android 经纬度方向,Android获取经纬度计算距离介绍
  17. 分集与复用,分集用于抵抗信道衰落,复用用于提升系统容量
  18. 多微博账号同时发微博的插件--fawave
  19. 【计算机组成原理】使用VHDL语言设计一个二输入异或门
  20. sql server 系统表 介绍

热门文章

  1. 图像处理之基础---去污算法
  2. 我真的很郁闷,应该振作起来的
  3. linux查看附近可用wifi并进行通过命令行连接
  4. flutter图片识别_Flutter 图片解码与缓存管理研究
  5. 中国互联网创业者的困境
  6. Nodelist转化问题。
  7. 出现这些情况,裸辞不是找虐,是解脱!
  8. Python大数据-电商产品评论情感数据分析
  9. Windows下实用工具汇总(更新……)
  10. 游戏开发中的进阶向量数学