0
私は単純なログインフォームを使って、保存したパスワードでFirefoxでEnterキーを押してもJavascriptフォームが送信されない
形式::ここでは、コードの関連ビットです
<form id="loginForm">
<input type="text" id="username" />
<input type="password" id="password" />
etc...
</form>
はjavascript:
$('#username, #password').bind('keypress', function(e) {
if (e.which == 13) {
$('#loginForm').submit();
e.preventDefault();
}
});
ユーザーがオンになったときに私がいる問題は、Firefoxのに固有のものですブラウザにパスワードを保存させる機能。
ユーザ名のテキストフィールドに自分のユーザ名の最初の数文字を入力すると、記憶されているオプションが表示されます。下向きの矢印を押してユーザ名を強調表示し、Enterキーを押して選択すると、JavaScriptがを発射してからの前にパスワードフィールドが自動入力されます。これにより、空のパスワードが送信されます。
Chromeで同じ「パスワードを保存」機能を使用すると問題なく動作します。
これを回避する方法については、
してくれてありがとうCoolEshあなたがフォーカスを確認しましたか?パスワードやユーザー名入力、または送信ボタン(追加した場合)にありましたか? – KutePHP
これは私が入力した場所なので、フォーカスはユーザー名フィールドにあります。私はユーザー名の最初の数文字を入力し、保存されたユーザー名/パスワードのリストにFirefoxが表示する最初のオプションを選択します。私が最初のオプションを選択するためにenterキーを押すと、JavaScriptがパスワードフィールドを入力する前にJavascriptが起動してフォームを送信しています。 –
keyupイベントを使用するようにしてください – CoolEsh