我的项目中有一个index.jsp,我希望根据条件转发不同的页面。以下是我的代码:
$.ajax({url: "some_url",
type: "HEAD",
timeout:1000,
statusCode: {
200: function (response) {
callOnlinePage();
},
400: function (response) {
callOfflinePage();
},
0: function (response) {
callOfflinePage();
}
}
});
function callOnlinePage(){
<jsp:forward page="online.jsp"/>
}
function callOfflinePage(){
<jsp:forward page="offline.jsp"/>
}
如果我在不放jsp:forward标签的情况下发出警报,则javascript代码是正确的。如果我把它们,它总是转到online.jsp。如果我先放置callOfflinePage函数,它每次都转发到offline.jsp。
那么,无论如何我都可以不改变网址。请...
答案 0 :(得分:1)
您需要了解服务器端呈现和客户端脚本代码之间的区别。
这里的问题是,当服务器呈现页面时,它遇到转发并将页面转发到相应的URL,在这种情况下,online.jsp是第一个。
您将不得不从客户端重定向页面,因为js代码将在客户端上执行。您可以使用window.location属性导航到certail url
function callOnlinePage(){
window.location = "online.jsp";
}