質問: ユーザーがenterキーを押してフォームを送信できないようにする 私はウェブサイトで調査をしていますが、ユーザーが入力ボタンを押して(なぜかわかりません)、送信ボタンをクリックせずに誤って調査(フォーム)を送信すると問題が発生するようです。これを防ぐ方法はありますか?調査にはhtml、php 5.2.9、およびjqueryを使用しています。
回答: 私が見たことがない何かがここで答えました:あなたがページの上で要素を通ってタブを押すとき、押す enter 送信ボタンをクリックすると、フォーム上のonsubmitハンドラが起動されますが、イベントはmouseeventとして記録されます。これが、ほとんどの基盤をカバーするための簡単な解決策です。これはjquery関連の回答ではありませんhtml<form onsubmit="return false;" method=post> <input type="text" /><br /> <input type="button" onclick="this.form.submit()" value="submit via mouse or keyboard" /> <input type="button" onclick="submitmouseonly(event)" value="submit via mouse only" /> </form> javascriptwindow.submitmouseonly=function(evt){ let allow=(evt instanceof mouseevent) && evt.x>0 && evt.y>0 && evt.screenx > 0 && evt.screeny > 0; if(allow)(evt.tagname=='form'?evt.target:evt.target.form).submit(); } 実用的な例を見つけるために: https://jsfiddle.net/nemesarial/6rhogva2/