我尝试使用Spring 4(4.0.2),Thymeleaf 2(2.1.3)和JQuery 2(2.1.1)。我所尝试的只是使用Petclinic示例制作导航丸,但是我在Thymeleaf的URL语法上遇到了JQuery语法错误
Error: Syntax error, unrecognized expression: /petclinic/register.html
我的标题页:
<!DOCTYPE html>
<html lang="en">
<head th:fragment="headTag">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Page title</title>
<link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/3.2.0/css/bootstrap.min.css"
th:href="@{/webjars/bootstrap/3.2.0/css/bootstrap.min.css}" rel="stylesheet" />
<link href="../../../resources/css/main.css" th:href="@{/resources/css/main.css}" rel="stylesheet" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"
th:src="@{/webjars/jquery/2.1.1/jquery.min.js}"></script>
<script sr="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js" th:src="@{/webjars/bootstrap/3.2.0/js/bootstrap.min.js}"></script>
</head>
<body>
</body>
</html>
和正文页面:
<!DOCTYPE html>
<html lang="en">
<body th:fragment="bodyHeader">
<img th:src="@{/resources/images/banner-graphic.png}" src="../../../resources/images/banner-graphic.png" class="center"/>
<div class="center" style="width: 601px;">
<ul class="nav nav-pills">
<li class="active"><a href="../welcome.html" th:href="@{/}" data-toggle="pill">Home</a></li>
<li><a href="../register.html" th:href="@{/register.html}" data-toggle="pill">Register</a></li>
</ul>
</div>
</body>
</html>
我在Firebug的控制台上遇到错误,当登陆主页并尝试进入Register导航丸时,它告诉问题是Thymeleaf的表达:@ {/ register.html }
答案 0 :(得分:1)
如何在浏览器中加载页面?它是否托管在像Tomcat这样的Web容器中?当您在浏览器中看到页面源时,URL如何显示?它们显示为/...
还是@{/...}
?
如果网址在页面来源中显示为@{/...}
,则渲染器不会选择前缀th
。将<html lang="en">
更改为<html lang="en" xmlns:th="http://www.thymeleaf.org">
,然后重试。