在函数调用上转到特定页面并执行操作

时间:2014-01-28 07:32:58

标签: javascript jquery

我环顾了stackoverflow,但无法找到满足我需要的任何东西。所以这是我的问题:

我想在点击按钮时调用一个函数。为此,我做了

  $( "#btn_id" ).click(function myFun() {
     // whatever needs to be done
  });

但问题是调用者按钮是全局的(可用于我的网站)以满足设计需求,但该功能只能在主页上执行。

有没有办法首先重定向到主页,如果已经存在,重新加载页面然后运行该功能。

我可以重新加载页面,然后调用此函数:Refresh page on button click and after that call an function。但是,此方法的问题是在所有刷新时自动调用函数,这是不需要的。只有按下该按钮才能触发它。

5 个答案:

答案 0 :(得分:1)

$("#btn_id").on("click", function() { myFun(); }); // more up-to-date

您可以设置一个标志(POST / GET) - 检查它是否已设置(因此,无论您的网站是通过按键点击还是按正常 - 刷新

刷新的

答案 1 :(得分:0)

如果要在按钮单击事件中调用该函数,那么为什么要在刷新时调用该函数。

或者调用下面的函数..

$( "#btn_id" ).click(function {
     myFun();
  });

答案 2 :(得分:0)

您可以查看您所在页面的网址。使用document.URL;并检查您必须在主页上运行的功能的条件。像这样的东西

    $( "#btn_id" ).click(function myFun() {
       if(document.URL == "http://www.myhome.com/home")
            {
            document.location.reload();
             }
       else {
           window.location = "http://www.myhome.com/home";
           document.location.reload();
           restartall();
            }
        });

答案 3 :(得分:0)

But the thing is the caller button is global(available though-out) 
to my site for design needs however the function can be performed 
only on the home page.

Is there any way to first redirect to home-page and if already 
there, reload the page and then run the function.

如果您可以在不使用全局按钮id的情况下选择元素并为其提供与其他页面不同的类,则为什么要重定向页面

<input type = "button" value = "fire me" class = "some_class" id = "btn_id">

然后使事件监听器像你所做的一样,但改变选择器就像

$( ".some_class" ).click(
  function myFun() {
 // whatever needs to be done

});

编辑: 这里的情况有所不同,因为它使用id进行设计。 仅供参考。在设计多个页面时使用一个类。

答案 4 :(得分:0)

  

在刷新页面之后调用函数是不可能的,因为刷新页面之后可以重置队列,因此如果在另一个页面使用中,可以在主页加载中仅使用cookie或调用函数,找到它是什么样的页面

if(location.pathname!=="home.html")
{
   window.location.href = 'home.html';
}