0

ページが読み込まれる前にメタタグの有効期限を読み取ろうとしており、このページを表示せずに既に期限切れになっている場合は、他の URL にリダイレクトします。私の期限切れタグは次のようになります<META HTTP-EQUIV="Expires" CONTENT="Tue, 21 Aug 2012 14:30:00 GMT">

現在の日付を行った方法では、メタタグの日付と比較できるとは思いません。機能させるために何を変更する必要があるか教えてもらえますか。ありがとう

<body onload="compareDate()"> 

function getExpiresContent() { 
   var metas = document.getElementsByTagName('meta'); 

   for (i=0; i<metas.length; i++) { 
      if (metas[i].getAttribute("property") == "Expires") { 
         return metas[i].getAttribute("content"); 
      } 
   } 

    return "";
}

function compareDate(){
   var expiresDateString = getExpiresContent();
   var expiresDate= new Date(expiresDateString);
   var currentDate = new Date();
   var day = currentDate.getDate();
   var month = currentDate.getMonth() + 1;
   var year = currentDate.getFullYear();
   var today = ("<b>" + day + "/" + month + "/" + year + "</b>");

   if (expiresDate < today){
    window.navigate(”top.jsp”);
   }
}
4

1 に答える 1

0

ページの読み込み前にこれをキャッチするには、HEAD でスクリプト ブロックを使用する必要があります。関数をスクリプト ブロックに配置し、次の直後に関数を呼び出します。

<script type='text/javascript'>
function getExpiresContent() {
...
}

function compareDate() {
...
)

compareDate()
</script>

日付を比較するには、「有効期限」の値を取得して日付オブジェクト (文字列ではない) を作成し、それを現在の日付と比較する必要があります。

データ オブジェクトがどのように機能するかについては、次の優れた説明を参照してください。

http://www.elated.com/articles/working-with-dates/

于 2012-08-23T15:28:32.830 に答える