[解決済み】jqueryで入力時のフォーム送信を無効にする
2022-04-06 19:22:28
質問
私のページには以下のようなjavascriptがありますが、動作していないようです。
$('form').bind("keypress", function(e) {
if (e.keyCode == 13) {
e.preventDefault();
return false;
}
});
入力時にフォームを送信しないようにするか、いっそのことajaxのフォーム送信を呼び出すようにしたいのですが。 どちらの解決策でも構いませんが、私が上に含めているコードはフォームの送信を防いでいません。
解決方法は?
もし
keyCode
がキャッチされていない場合は
which
:
$('#formid').on('keyup keypress', function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode === 13) {
e.preventDefault();
return false;
}
});
EDIT: 見逃しました。
keyup
ではなく
keypress
EDIT 2: Firefoxのいくつかの新しいバージョンでは、フォーム送信を防止できないので、keypressイベントもフォームに追加した方が安全です。また、イベントをフォームの "name" にバインドするだけではうまくいかず、フォームの id にのみバインドするようにしました(今は?そのため、コード例を適切に変更することで、この点をより明確にしました。
編集 3: 変更点
bind()
から
on()
関連
-
[解決済み】HTMLの最初の行に予期しないトークン<がある。
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] Webフォームのフィールド/入力タグでブラウザのオートコンプリートを無効にするにはどうすればよいですか?
-
[解決済み] jQueryの「exists」関数はありますか?
-
[解決済み] jQueryでテーブルの行を追加する
-
[解決済み] jQueryで入力を無効化/有効化する?
-
[解決済み] フォーム送信のようなJavaScriptのポストリクエスト
-
[解決済み] jQuery AJAX送信フォーム
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】document.getElementByIDは関数ではありません。
-
[解決済み] Uncaught Invariant Violation: 前のレンダリング中よりも多くのフックをレンダリングした
-
[解決済み】jquery $.ajaxオブジェクトのresponseJSONプロパティを取得する方法 [重複]。
-
[解決済み】最大呼び出しスタックサイズ超過エラーとその修正方法とは?
-
[解決済み】JavaScript "Uncaught TypeError: object is not a function" 連想性の質問
-
[解決済み】ある要素が可視DOMに存在するかどうかを確認するにはどうすればいいですか?
-
[解決済み] ローカルファイルを開くことができません - Chrome: ローカルリソースのロードが許可されていません
-
[解決済み】Vueが定義されていない
-
[解決済み] ユーザーがEnterキーを押してフォームを送信できないようにする
-
[解決済み】event.returnValueは非推奨です。代わりに標準のevent.preventDefault()を使ってください。