IE7 Form nicht aufgefordert, für Passwort vergessen haben, wenn sie durch Javascript eingereicht

StackOverflow https://stackoverflow.com/questions/158438

Frage

Ich habe eine Website, wo wir Javascript verwenden, um das Login-Formular einzureichen. Auf Firefox fordert er den Benutzer sein Passwort zu erinnern, wenn sie anmelden, aber auf IE7 nicht.

Nach einigen Recherchen es sieht aus wie der Benutzer nur in IE7 aufgefordert wird, wenn das Formular über ein Submit-Steuerelement vorgelegt. Ich habe einige Beispiel-HTML erstellt zu beweisen dies der Fall ist.

<html>
<head>
<title>test autocomplete</title>
<script type="text/javascript">
function submitForm()
{
    return document.forms[0].submit();
}
</script>
</head>
<body>
<form method="GET" action="test_autocomplete.html">
<input type="text" id="username" name="username">
<br>
<input type="password" id="password" name="password"/>
<br>
<a href="javascript:submitForm();">Submit</a>
<br>
<input type="submit"/>
</form>
</body>
</html>

Der href-Link wird nicht die Aufforderung aber die Submit-Button wird in IE7. Beide arbeiten in Firefox.

Ich kann den Stil meiner Website erhalten, um gleich aussieht mit einer Submit-Button, Weiß jemand, wie man das Passwort Prompt erinnern bekommen zu zeigen, wenn sie über Javascript einreichen?

War es hilfreich?

Lösung

Warum nicht versuchen, das Formular Vorlage auf diese Weise Einhaken?

<html>
    <head>
        <title>test autocomplete</title>
        <script type="text/javascript">
            function submitForm()
            {
                    return true;
            }
        </script>
    </head>
    <body>
        <form method="GET" action="test_autocomplete.html" onsubmit="return submitForm();">
            <input type="text" id="username" name="username">
            <br>
            <input type="password" id="password" name="password"/>
            <br>
            <a href="#" onclick="document.getElementById('FORMBUTTON').click();">Submit</a>
            <br>
            <input id="FORMBUTTON" type="submit"/>
        </form>
    </body>
</html>

Auf diese Weise Ihre Funktion aufgerufen wird, ob der Link geklickt wird oder die Submit-Taste gedrückt wird (oder die Enter-Taste gedrückt wird) und Sie können durch Rücksendung falsch die Vorlage abzubrechen. Dies kann Auswirkungen auf die Art und Weise IE7 des Formulars Vorlage interpretiert.

Edit: Ich würde auf diese Weise eher immer Hakenform Vorlage empfehlen als () auf dem Formular-Objekt ruft einreichen. Wenn Sie einreichen () aufrufen, dann wird es nicht lösen die onsubmit Formularobjekt.

Andere Tipps

Haben Sie versucht, in URL in der href setzen und einen Click-Ereignishandler Anbringen das Formular abzusenden und Rückkehr falsch aus dem Click-Handler, so dass die URL nicht navigiert erhalten.

Alternativ einreichen versteckte Taste ausgelöst über Javascript?

Sie können den HTML-Code versuchen Sie es mit

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