2014-01-28 35 views
1

我環顧四周,但無法找到任何滿足我需要的東西。所以這裏是我的問題:在函數調用轉到特定頁面並執行操作

我想調用一個按鈕單擊函數。爲此,我做了

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

但事實是主叫按鈕是全球性的(雖然可出)到我的網站設計需要但只能在主頁上執行的功能。

有什麼辦法可以首先重定向到主頁,如果已經存在,重新加載頁面然後運行該功能。

我可以重新加載頁面,然後調用以下函數:Refresh page on button click and after that call an function。然而,這個方法的問題是函數在所有不需要刷新的地方自動調用。只有點擊該按鈕才能觸發它。

+0

發送與按鈕的點擊一個隱藏的輸入並在新的頁面上執行功能的'如果isset在php $ _POST'檢查。 – timo

回答

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

,你可以設置一個標誌(POST/GET) - 檢查是否設置或沒有(這樣,無論您的網站被刷新按鈕,點擊或通過正常 -refresh

0

如果您要調用按鈕單擊事件的功能,那麼你爲什麼調用函數中刷新。

或致電像下面的功能..

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

你可以在c檢查您所在頁面的網址。使用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(); 
      } 
     }); 
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用於設計目的。 供參考。在設計你的多頁面時使用一個類。

0

調用後刷新頁面的功能是不可能的,因爲清爽的頁面後,隊列可以重置因此有可能只使用cookie或撥打主頁加載功能,如果它是在另一個頁面使用,發現這是哪個頁面像

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