zoukankan      html  css  js  c++  java
  • thymeleaf contextPath html javascript

    因为可能你开发的contextPath 和生产的 contextPath不同,所以要让你的项目能自动适应contextPath变化 。

    如果你是要在thymeleaf标签中使用,有种方法可以获取这个值(实际上几乎没有能用到的地方)

    1:

    ${#httpServletRequest.getContextPath()}

    2:

    ${#servletContext.contextPath} 

    example:

    <script th:src="|${#servletContext.contextPath}/js/index.js|"></script>

    如果你没有配置server.servlet.context-path ,那取出的值将是空字符串。

    因为 server.servlet.context-path 的配置要求是 以 / 开始,且不能以 / 结尾。

    所以如果你配置了,那取出来的内容 就是 /xxxx 这样的格式,在实际使用时,下级目录前要加 / 。

    为什么说几乎没有能用到的地方, @{} 这个表达式已经可以满足几乎全部需求了,比如

    th:href 

    th:src

    th:onclick="|window.location.href='@{/}'|" 

    如果是在js块中引用  需要在script 标签上加     th:inline="javascript"

    然后加  CDATA 注释   然后你的 表达式要用   /*[[  和   ]]*/  围起来

    你可以在一个公共的页面里把 contextPath 声明在js变量里,,然后各个页面就可以引用这个脚本块。

    <script th:inline="javascript">
        /*<![CDATA[*/
        var $contextPath = /*[[@{/}]]*/;
        /*]]>*/
    </script>
  • 相关阅读:
    用命令行工具安装 卸载 设置 .Net服务
    oracle imp 数据时实现插入到表中 不覆盖
    Oracle导出 Exp的使用
    Linux下的tar压缩解压缩命令详解
    设计模式 配置器
    设计模式 概括说明
    设计模式 创建型模式
    设计模式 组成 & 装饰 & 外观
    设计模式 单件 & 原型
    设计模式 享元 & 代理
  • 原文地址:https://www.cnblogs.com/eclipse-/p/10523405.html
Copyright © 2011-2022 走看看