我的代码在这里:
<script type="text/javascript">
/*<![CDATA[*/
//var rootpath=[[${httpServletRequest.getContextPath()}]];
//var rootpath = [[${rootPath}]];;
var rootpath=$("#rootpath").val();
//alert(rootpath);
var tale = new $.tale();
function checkForm() {
tale.post({
url: rootpath+'/admin/login',
data: $("#loginForm").serialize(),
success: function (result) {
if (result && result.success) {
window.location.href = rootpath+'/admin/index';
} else {
tale.alertError(result.msg || '登录失败');
}
}
});
return false;
}
/*]]>*/
</script>
我可以在HTML中使用隐藏标记来存储值,
<input type="hidden" id="rootpath" th:value="${#httpServletRequest.getContextPath()}" />
最近通过
获取var rootpath=$("#rootpath").val();
但是还不够。
如何直接获取请求值?
答案 0 :(得分:1)
在最新的Thymeleaf上,这对我有用:
<script type="text/javascript" th:inline="javascript">
/*<![CDATA[*/
var tale = new $.tale();
function checkForm() {
tale.post({
url: /*[[@{/admin/login}]]*/ '',
data: $("#loginForm").serialize(),
success: function (result) {
if (result && result.success) {
window.location.href = /*[[@{/admin/index}]]*/ '';
} else {
tale.alertError(result.msg || '登录失败');
}
}
});
return false;
}
/*]]>*/
</script>
您不需要使用#httpServletRequest
来获取上下文路径,只需使用Thymeleaf的标准url语法即可。