概要は次のとおりです。
Readonlyは入力(テキスト/パスワード)とTextareaでのみ機能しますが、無効は選択、ラジオ、チェックボタン、ボタンなどを含むすべてのフォーム要素に対して有効です。ただし、フォーム要素が無効になった後、フォームを投稿または取得すると、この要素の値が配置されず、ReadOnlyが値を渡します(このケースは、Formを使用しています。
一般に、最も一般的に使用される状況は次のとおりです。
curseユーザーにはフォームで一意の識別コードが充填されており、ユーザーは変更を許可していませんが、送信する際に値を渡す必要があります。この時点で、その属性は読み取るように設定する必要があります
curseユーザーがフォームを正式に提出し、管理者の情報が検証するのを待つ必要があるときに遭遇することがよくあります。これにより、ユーザーがフォーム内のデータを再度変更することはできませんが、表示するだけです。無効化された要素の範囲は大きいため、現時点では無効を使用する必要がありますが、同時に、送信ボタンも無効にする必要があることに注意する必要があります。それ以外の場合、ユーザーがこのボタンを押す限り、データベース操作ページで整合性検出が実行されない場合、データベースの値がクリアされます。この場合、無効化する代わりにreadonlyを使用している場合、フォームに入力(テキスト/パスワード)とテキストレア要素のみがある場合、それはまだ可能です。選択など、他の送信要素がある場合、ユーザーは値を書き換えた後にEnterキーを押して送信できます(Enterはデフォルトの送信トリガーキーです)
suderユーザーが送信ボタンを押した後、JavaScriptを使用して送信ボタンを無効にします。これにより、ユーザーがネットワーク条件が低い環境で送信ボタンを繰り返しクリックすることができなくなり、データがデータベースに冗長に保存されます。