Pergunta

Eu tenho um formulário assim:

<form id="loginCompact" action="https://externalsite..." name="sportsbook" method="post" onsubmit="createCookie('BRLOG', document.sportsbook.username.value, 1)">
    <input type="text" name="username" class="loginUsername" />
    ...other fields...
</form>

E esta é a função Javascript chamada:

<script type="text/javascript">
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=/; domain='mydomain.com'";
}
</script>

No entanto, o cookie não está sendo definido quando o formulário é enviado.Estava funcionando bem quando conectado ao onclick manipulador do botão, mas não em onsubmit.Alguma ideia?

Foi útil?

Solução 2

Eu descobri isso - eu precisava fazer uma parada em frente ao domínio e perder as citações:

domain=.mydomain.com

Outras dicas

Verifique se onsubmit está escrito corretamente (talvez seja onSubmit?).

Simplifique colocando um alerta em vez de uma chamada para sua função

onsubmit="alert('test')"

Coloque um alerta no topo da sua função para ver se ela está sendo chamada e se o cookie não está sendo definido por algum motivo mais complicado.

Se estiver sendo chamado, verifique se todas as variáveis ​​nas quais você confia estão corretas, usando alertas ou (melhor), algo como firebug.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top