重定向jQuery / JavaScript后执行一个函数

时间:2018-06-12 07:36:12

标签: javascript jquery function redirect

我想在我的网站上重定向后执行一个函数。这是我的代码:

$('a.filter-redirect').on('click', function(){

       window.location.replace('/technos/');
       filter();

});

这是我的功能"过滤":

$('a.filter-tech').on('click', function filter(){

        var tag = $(this).attr('rel');
        var val_input = $('#tag').val();

        if(tag === val_input){

            $('#tag').val('');
            $('#form').submit();

        }

        if(val_input){

            $('#tag').val(val_input + ',' + tag)

        }

        $('#tag').val(tag);
        $('#form').submit();
        return false;
});

我不是JS和jQuery的专家,代码可能是错误的。我的功能有效,但重定向后没有。

3 个答案:

答案 0 :(得分:0)

当您重定向到新页面时,不再执行上一页上的脚本。因此,您必须在加载新页面时立即调用此函数,例如在$(window).load()$(document).ready()上,而非上一页中的点击。

$(document).ready(function(){
       var tag = $(this).attr('rel');
        var val_input = $('#tag').val();

        if(tag === val_input){

            $('#tag').val('');
            $('#form').submit();

        }

        if(val_input){

            $('#tag').val(val_input + ',' + tag)

        }

        $('#tag').val(tag);
        $('#form').submit();
        return false;

})

答案 1 :(得分:0)

当您重定向页面位置更改时,这意味着加载了新页面并且旧页面已消失。 要在新页面中执行某些操作,您必须将其添加到该页面中(例如,在正文中加载或在脚本标记中)

答案 2 :(得分:0)

当您转到新页面时,请将所有必需的代码保留在$(document).ready()window.load()

像这样的事情

function runOnPageLoad() {
        alert('Hey There');
    }
    window.onload = runOnPageLoad;

或者在jquery中

  $(document).ready ( function(){
    alert('Hey There');
});​

希望有所帮助