前端 前端 前端  

 

<!-- 假设项目的请求根路径是"/demo" -->
<!-- 方式一:EL表达式 -->
${pageContext.request.contextPath}
<br>显示结果:"/demo"

  应用:

<i:form id="AddForm" method="post" action="${pageContext.request.contextPath}/xnh/server/com/appro/CliAppro/getClicomdetailList.do" onSuccess="clicomDetail.onLoadData" 
  onsubmit="javascript:return false">
</i:form>
<!-- 方式二:小脚本 -->
<%=request.getContextPath() %>
<br>显示结果:"/demo"
<!-- 方式三:c标签 -->
<c:url value="/index.jsp"></c:url>
<br>显示结果:"/demo/index.jsp"
<!-- 方式四:javascript -->
<script type="text/javascript">var baseUrl = '<%=request.getContextPath()%>';</script>
<br>显示结果:baseUrl ="/demo"

2022年1月8日17:39:30

上面4种方式,都是通过JSP来实现的,如何通过js来实现呢?

<script type="text/javascript">
// 获取请求路径
var pathName = window.document.location.pathname;
// 通过截取得到项目名称
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);
</script>

window.location
属性 描述 
hash 设置或获取 href 属性中在井号“#”后面的分段。 
host 设置或获取 location 或 URL 的 hostname 和 port 号码。 
hostname 设置或获取 location 或 URL 的主机名称部分。 
href 设置或获取整个 URL 为字符串。 
pathname 设置或获取对象指定的文件名或路径。 
port 设置或获取与 URL 关联的端口号码。 
protocol 设置或获取 URL 的协议部分。 
search 设置或获取 href 属性中跟在问号后面的部分。


作者:​​Marydon​​