1

人々が私のURLを入力するとき、私は彼らにノースカロライナまたはバージニアをクリックしてもらいたいです。クリックすると、www.myurl.com/ncまたはwww.myurl.com/vaにリダイレクトされます。彼らがその質問に答えた後、次に彼らが私のサイトにアクセスすると、NCまたはVAを再度クリックすることなく適切なページにリダイレクトされます。これが私がこれまでに得たものです。身近に感じますが、正直なところ何をしているのかわかりません。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
   <title></title> 
</head>
<body> 
   <a href="#" onClick="window.location = "http://www.myurl.com/nc"" value="nc">North Carolina</a>
   <br />
   <br /> 
   <a href="#" onClick="window.location = "http://www.myurl.com/va"" value="va">Virginia</a> 
   <script type="text/javascript" src="script.js"></script> 
   <script type="text/javascript">
      function setCookie {
         document.body.style.state = size; 
         createCookie('state', size, 90);
      }
      var state = readCookie('state'); 
      if (state !== null)
      { 
         // cookie exists setCookie(state);
      } 
    </script> 
</body> 
</html>

次のコードを含む別のスクリプトファイルもあります。

// JavaScript Document 
function createCookie(name,value,days) {
    if (days) {
       var date = new Date(); 
       date.setTime(date.getTime()+(days*24*60*60*1000));   
       var expires = "; 
       expires="+date.toGMTString(); 
    } else var expires = "";
    document.cookie = name+"="+value+expires+";
    path=/"; 
}
function readCookie(name) { 
    var nameEQ = name + "=";
    var ca = document.cookie.split(';'); 
    for(var i=0;i < ca.length;i++) {
        var c = ca[i]; 
        while (c.charAt(0)==' ')
           c = c.substring(1,c.length); 
        if (c.indexOf(nameEQ) == 0) 
           return c.substring(nameEQ.length,c.length);
    } 
    return null; 
} 
function eraseCookie(name) {
    createCookie(name,"",-1);
}
4

1 に答える 1

1
onClick="window.location = "http://www.myurl.com/nc""

二重引用符内に二重引用符があるため、間違っています。内側のものは一重引用符 ( ') にします。ユーザーがリンクをクリックすると、ユーザーがアクセスしたいサイトのパラメーターを指定して JavaScript 関数を呼び出す必要があります。

// state will be wither "nc" or "va"
function redirect(state) {
    createCookie('state', state, 90);
    window.location.href = "http://www.myurl.com/" + state;
}

今後、Cookie が既に設定されている場合は、上記の関数と同じ方法を使用してユーザーをリダイレクトします。

于 2012-06-08T01:39:35.190 に答える