繁体   English   中英

html在jquery完成执行之前加载一个新页面

[英]html loads a new page before the jquery finishes the execution

单击带有链接锚 html 标记时,我想更改 jquery 中变量的值,此标记也会加载新页面,但是当我单击该锚标记时,会加载新页面,但变量值未更改。

我在互联网上查看,我发现这是由于 jquery 的异步性质。

这是我的代码:-


var req;
$(document).ready(function(){
    $('header').load("navbar.html");
    $('footer').load("footer.html");
    $('#veg-caterer').click(function(){
        req = "c1";
    });
});


在上面的代码中,当我在更改req的值之前单击#veg-caterer时,会加载新的 html 页面

我正在使用警报检查其他页面上 req 的值,它显示未定义这里是代码:-

$(document).ready(function(){
    alert(req);
});

我曾尝试使用URL get parameters , setTimeout但我也面临同样的问题。我知道它的基本知识,但我对 jquery 和 js 有点陌生。 请解释你的答案

我的主要动机是在单击带有链接的锚标记时将该值传递给其他 js 文件

可以对click事件做一个preventDefault,然后在设置req的值后手动设置页面的位置

$('#veg-caterer').click(function(e){
    e.preventDefault();
    req = "c1";
    window.location = e.currentTarget.getAttribute('href');
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM