Question

J'ai une forme comme ceci:

<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>

Et ceci est la fonction Javascript qui est appelé:

<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>

Cependant, le cookie ne se défini lorsque le formulaire est soumis. Il fonctionnait très bien lorsqu'il est attaché au gestionnaire de onclick du bouton, mais pas sur onsubmit. Toutes les idées?

Était-ce utile?

La solution 2

Je me suis dit ceci - je avais besoin de mettre un point en face du domaine, et de perdre les guillemets:

domain=.mydomain.com

Autres conseils

Assurez-vous onsubmit est correctement orthographié (peut-être est onSubmit?).

Simplifier en mettant une alerte à la place d'un appel à votre fonction

onsubmit="alert('test')"

Mettre une alerte en haut de votre fonction pour voir si elle devient appelé et le cookie n'est pas réglé pour une raison plus compliquée.

Si on s'appelle, assurez-vous que toutes les variables sur votre fient sont corrects, en utilisant des alertes, ou (mieux), quelque chose comme Firebug.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top