2013-01-18 20 views
5

Recentemente ho tentato di impostare un cookie contenente il nome dell'utente, apre una finestra pop-up che richiede un nuovo nome utente. Quando l'utente inserisce il nome utente e fa clic su "ok", non considera la variabile (sconName) come una variabile e inserisce semplicemente "sconName".Imposta il valore del cookie dalla variabile

Nota: Scon è il nome del sito Web.

Heres l'unica sceneggiatura che sto usando:

<html> 
    <body> 
<script> 
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; } 
    </script> 
<script> 
    var username = readCookie('sconName'); 
if (username) { 
    document.write("Your current username is: " + username); 
} 
    else { 
    document.write("You have no user name"); 
    } 

    function changeUsername() { 
    var changedName=prompt("Enter user name."); 
    if (changedName) { 
document.cookie = 'sconName=changedName; expires=Wed, 1 Jan 2070 13:47:11 UTC; path=/'}} 
    </script> 
<button onclick="changeUsername()">Change</button> 
</body> 
</html> 

prega Ci può spiegare come dire il sistema che la sua una variabile non solo testo. Grazie.

+2

Quindi stai chiedendo come concatenare una stringa? – SLaks

risposta

15

javascript non analizza le variabili tra virgolette. È necessario uscire dalle virgolette per utilizzare la variabile:

document.cookie = 'sconName='+changedName+'; expires=Wed, 1 Jan 2070 13:47:11 UTC; path=/' 
Problemi correlati