asp.net にイベント ドリブンを導入した後は、1 ページ上で複数のボタンが異なるイベントをトリガーする問題を簡単に解決できるようになり、asp で複数のフォームを必要としたり、js スクリプトで制御したりするトラブルが回避されます。
asp.net は利便性をもたらす一方で、問題ももたらします。実際のアプリケーションでは、ページ内に複数のボタンが存在するケースは多くありません。ユーザーは、入力ボックスに内容を入力し、Enter キーを押してフォームを送信することに慣れています。 asp.net はイベント駆動モデルを使用しているため、デフォルトでは、ユーザーが Enter キーを押してもボタンの onclick イベントはトリガーされません。ユーザーが Enter キーを押したときにフォームを送信しなかったわけではありません。httpwath を見ると、ページ フォームが実際にはフォームの下のアクション ページに送信されていることがわかりますが、onclick イベントはトリガーされません。
asp.net イベント駆動モードでは、改行によってイベントをトリガーするには、js スクリプトを使用する必要があります。 asp.net の aspx ページのフォーム コード:
この内容を理解すると、トリガーされるボタンの onclick イベントを処理するのがはるかに簡単になります。入力ボックスで Enter を押す これは、入力ボックスで Enter を押すアクションをインターセプトし、js を介して __doPostBack 関数を呼び出して入力ボックスを OK します: