2013-05-01 118 views
0

我有一個腳本,在第一次加載網頁時會隱藏大部分頁面。 當它這樣做時,我希望它運行一個獲取當前日期的函數,然後保存它。在頁面加載運行JQuery函數並存儲結果

我遇到了麻煩,有幾個原因。

這裏是頁面加載代碼,它隱藏的頁面,如果它沒有被設置:

$(document).ready(
    function() { 
      if (setup=="true") { 
        $("#show-page").show(); 
        loadSetup(); 
      } else { 
        $("#page-nav").hide(); 
      } 
    }); 

下面是日期功能:

function getStartDate() { 
    var today = new Date(); 
    var dd = today.getDate(); 
    var mm = today.getMonth(); 
     var yyyy = today.getYear(); 

    var startDate = dd + (mm * 30) + (yyyy * 360) 
//edit 
//  return startDate 
    $("#start-date").val(startDate); 
    localStorage.startDate = $("#start-date").val(); 
} 

然後我想在IF函數加載頁面的第一部分說明存儲的開始日期+30是否小於當前日期,顯示一條消息,提供更新的url(isNewUrlNeeded())。

這是我的嘗試:

$(document).ready(
function() { 
     if (setup=="true") { 
       $("#show-page").show(); 
       loadSetup(); 
       isNewUrlNeeded(); 
     } else { 
       $("#page-nav").hide(); 
       getStartDate(); 
     } 
}); 

這裏的問題是,getStartDate值不存儲,我不知道如何保存它。它需要存儲的原因是我可以稍後在函數isNewUrlNeeded中調用它。

任何幫助將不勝感激。

謝謝!

親切的問候,

加里

回答

0

你可以試試這個:

function getStartDate() { 
    var today = new Date(); 
    var dd = today.getDate(); 
    var mm = today.getMonth(); 
    var yyyy = today.getYear(); 

    var startDate = dd + (mm * 30) + (yyyy * 360) 
    $("#show-page").data("start-date", startDate); 
} 

要獲得這個日期,你可以做如下:

var startDate = $("#show-page").data("start-date"); 
+0

可惜,這是行不通的。 – Gary 2013-05-01 10:12:59

+0

它似乎沒有保存結果,螢火蟲顯示它未定義 – Gary 2013-05-01 10:16:30

+0

你確定嗎?我的意思是,這是標準的jQuery API,你確定你的#show-page元素存在於dom中嗎? – Pavel 2013-05-01 10:55:52