Frage

Ich habe eine Form wie folgt aus:

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

Und das ist die Javascript-Funktion, die aufgerufen wird:

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

Allerdings wird das Cookie nicht gesetzt wird, wenn das Formular abgeschickt wird. Es funktioniert gut, wenn an dem onclick Handler des Buttons angebracht, aber nicht auf onsubmit. Irgendwelche Ideen?

War es hilfreich?

Lösung 2

dachte ich diese - ich brauchte einen Punkt vor der Domäne zu setzen, und verlieren die Anführungszeichen:

domain=.mydomain.com

Andere Tipps

Überprüfen Sie, onsubmit machen richtig geschrieben ist (vielleicht ist es onSubmit?).

Simplify durch einen Alarm in anstelle eines Anrufs auf Ihre Funktion setzen

onsubmit="alert('test')"

Setzen Sie eine Benachrichtigung an der Spitze Ihrer Funktion zu sehen, ob es immer genannt und das Cookie nicht für etwas mehr kompliziert Grund eingestellt wird.

Wenn es heißt immer, stellen Sie sicher, dass alle Variablen Sie auf korrekt sind verlassen, mit Warnungen oder (besser), so etwas wie Firebug.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top