如何在JavaScript中更改window.location.href,然后执行更多的JS
How to change window.location.href in JavaScript and then execute more JS?
在点击链接时执行的代码片段如下
cj_redirecturl="/HomeWork/main/load_course";
utility.xhttprw.data(cj_redirecturl,{data:courseid},function(response){
if(response){
window.location.href=base_url+"main";
///next
utility.xhttprw.data(redirecturl,{data:""},function(response){
if(response){
id=ent;
document.getElementById('content').innerHTML=response;
// Assignemnt module
//Call function from javascript/assignment.js file to display particular assignment (ent:means assignment_id) //
if(con==5)
{
get_assignment_id(ent);
}
if(con==9)
{
get_content_details(ent);
}
} //end of response
},false,false,false,'POST','html',true);
}
},false,false,false,'POST','html');
上面代码window.location.href=base_url+"main";
中的将页面重定向到相应的页面,但这将停止在其旁边编写的代码的执行。现在我希望这段代码被执行,因为它是写的,即首先代码应该带我到各自的"主"页,然后代码写之后,必须执行并给我一个所需的输出。
有人能指导我实现这个吗?
window.location.href = base_url + "main";
<-当您加载此页面时,调用在///next
定义的代码
你必须添加一些参数:
window.location.href=base_url+"main?parameter=true";
另一种方法是用ajax将页面加载到html中的div中。
从jQuery看一下$.ajax()
请试着写
window.location.href = base_url + "main";
在if条件结束前使用
setTimeout('window.location.href=base_url+"main"', 2000);
正如已经注意到的,您不能在转到另一个页面后执行代码
你可以做的是创建重定向函数,它将传递你的函数在cookie和,重定向,然后在下一页eval它。(与另一个调用重定向器在下一页)
但是你应该意识到一些问题
1)包装。如何包装饼干由你来决定。
2) Encription。如果您传递未打包或未加密的cookie,"坏用户"可以在该cookie中传递一些恶意代码。
你应该有非常非常好的理由去做这件事。这种方式太复杂,难以编码,难以维护如果你做了额外的服务器端控件,那就更好了,把它保存在某个地方,然后在另一个页面上重新加载。
你需要把JS代码的其余部分包装在一个窗口内。onbeforeunload回调。
查看这里:拦截页面退出事件
你需要使用onBlur事件在退出页面之前继续执行js代码。
的例子:
function downloadExcel()
{
// Your code...
$('#download_excel_button').hide();
$('#download_spinner').show();
window.location.href = download_page;
window.onblur = function(event)
{
// other event code...
$('#download_spinner').hide();
$('#download_excel_button').show();
}
}
相关文章:
- jQuery-等待此元素,然后执行1次
- 方法来查看jQuery文件是否已完全加载,然后执行与其相关的函数
- 识别javascript,然后执行“;包括“;
- 首先验证表单,然后执行 Ajax 调用
- Phantomjs 检查响应标头,然后执行某些操作
- 等待多个条件,然后执行函数
- jQuery children().fadeOut() 然后执行单个函数
- jQuery是否可以用JavaScript替换文本,然后执行
- 等待几个 ajax 调用完成,然后执行某些操作
- 执行 C# 事件处理程序,然后执行该 js 函数
- JavaScript循环等待一些函数返回,然后执行下一个循环
- AG-Grid 将列标题设置为复选框,然后执行全选或取消全选列,而不是仅组
- 重新加载仅包含脚本的 DIV,然后执行脚本
- 等待几秒钟,让下载完成,然后执行PHP代码
- 使用JQuery在元素中查找文本,然后执行函数
- jQuery:检查元素是否有类,然后执行函数
- Node.js:执行多个异步操作的最佳方式,然后执行其他操作
- 将页面重定向到另一个页面,然后执行jQuery操作
- 检查是否选中任何单选按钮,然后执行代码(多组按钮)
- 加载页面,然后执行javascript