在我的网络项目中,如果用户在一个浏览器选项卡中注销,他们将在与该页面进行交互(点击某物等)后被重定向到任何其他浏览器选项卡中的登录页面。但是,如果用户的单击在 ajax 中引发对子页面的父页面调用并将该页面呈现在自身之上,则此行为将不起作用。 ajax 将只返回一个登录页面,它不会在屏幕上正确呈现。
我无法从客户端确定用户是否已经注销,所以我尝试实现以下内容:如果从服务器返回的子页面是登录页面,则不呈现它, 但立即将父页面重定向到登录页面。
$.ajax({
type: 'GET',
url: someURL,
success: function (response) {
//if a user has been logged out,
//the response object will contain a string with a rendered html of login page
//which contains a div with a class "login"
...
如何检查响应是否包含带有“登录”类的 div?如果我这样做,我就可以把
window.location.href= "login.asp";
或者只是
window.location.reload();
如果需要的话。
最佳答案
你可以像这样使用find
:
var result = $(response).find('div.login');
if(result.length > 0) {
//It does contain
}
else {
//Does not contain
}
Here是查找文档
关于Javascript - 如何检查带有类的元素是否存在于纯字符串中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46485912/