重定向完成后如何执行一些jQuery或JavaScript代码
如果像jQuery / JS重定向一样,我怎么能执行jQuery / JS代码…
$(location).attr('href','/target_path');
…要么…
window.location.href = "/target_path";
…已经完成加载新页面?
具体来说,我需要传递一条警告消息并将其插入并在新页面上显示(包含在某些HTML中)。
在重定向之后,不可能告诉JavaScript执行某些代码。
但是你有不同的选择:
- 在重定向URL中传递一个字符串,然后在“就绪”上执行某些操作
- 将一些信息存储在cookie中然后“准备好”做一些事情
- 如果您不介意较小的浏览器支持,请使用DOM存储 (即
sessionStorage
)存储一些数据
你不能。 重定向发生后,您不再在该页面上。 您无法在不再使用的页面上执行代码。 如果您希望下一页执行某些操作,则需要通过cookie或URL参数传递一个指示它执行此操作的标志。
您无法在重定向的页面中执行此操作。 您可以在登录页面( document.referrer
)中阅读引荐来源,然后决定是否显示基于此的警报。
var x = "It's some text"; var loc = '/target_path'; loc += '?message=' + encodeURI(x);
然后,新页面上的JS文件可以查看查询字符串以查看是否存在消息,并在检测到消息时执行所需的操作。
您可以在新页面上使用window.location.search
查看其中的内容,尽管我建议在库中搜索deparam函数以将查询字符串转换为更有用的对象。