formのinputはreadonlyとdisableに設定できますが、両者の違いは何ですか?
8694 ワード
Jqueryのapiでは、要素にdisabledとreadonly属性を適用する方法が提供されています.ここで記録します.次のようになります. readonly disabled
同じ点 readonlyとdisabledは、ユーザーがフォームの内容を変更することを禁止することができます.たとえばtrueに設定すると、formプロパティは に編集できません.
異なる点 readonlyはinput(text/password)およびtextareaのみに対して有効であり、disabledはselect、radio、checkboxなどを含むすべてのフォーム要素に対して有効である. フォームGETまたはPOST方式でコミットする場合、フォーム要素はreadonlyを使用した後、値をバックグラウンドに渡すことができる.フォーム要素はdisabledを使用した後、バックグラウンドに値を渡すことはできません. すべてのコントロールにはdisabledプロパティがありますが、readonlyプロパティがあるとは限りません.readonlyで削除されたボタンをクリックするとイベントがトリガーされますが、disabledで削除されたボタンは使用できません.上にイベントがあるかどうかにかかわらず.
テクニック:readonlyにcssスタイルを設定できます:style="background-color:#cccc;"これでreadonlyの表示効果はdisableと同じになります
入力項目のdisabledがtrueに設定されている場合、フォーム入力項目はフォーカスを取得できず、ユーザーのすべての操作(マウスクリックやキーボード入力など)が入力項目に無効になります.最も重要なのは、フォームをコミットすると、このフォーム入力項目はコミットされません.
一方、readonlyは、テキスト入力ボックスのようなテキストを入力できる入力項目にすぎず、trueに設定すると、ユーザーは対応するテキストを編集できないだけですが、フォーカスを合わせることができ、フォームをコミットするときにformの1つとして送信されます.
$('input').attr("readonly","readonly")// input readonly
$('input').removeAttr("readonly");// input readonly
if($('input').attr("readonly")==true)// input readonly
// readonly readonly :
$('input').attr("readonly",true)// input readonly
$('input').attr("readonly",false)// input readonly
$('input').attr("readonly","readonly")// input readonly
$('input').attr("readonly","")// input readonly
$('input').attr("disabled","disabled")// input disabled
$('input').removeAttr("disabled");// input disabled
if($('input').attr("disabled")==true)// input disabled
// disabled disabled :
$('input').attr("disabled",true)// input disabled
$('input').attr("disabled",false)// input disabled
$('input').attr("disabled","disabled")// input disabled
$('input').attr("disabled","")// input disabled
同じ点
異なる点
テクニック:readonlyにcssスタイルを設定できます:style="background-color:#cccc;"これでreadonlyの表示効果はdisableと同じになります
入力項目のdisabledがtrueに設定されている場合、フォーム入力項目はフォーカスを取得できず、ユーザーのすべての操作(マウスクリックやキーボード入力など)が入力項目に無効になります.最も重要なのは、フォームをコミットすると、このフォーム入力項目はコミットされません.
一方、readonlyは、テキスト入力ボックスのようなテキストを入力できる入力項目にすぎず、trueに設定すると、ユーザーは対応するテキストを編集できないだけですが、フォーカスを合わせることができ、フォームをコミットするときにformの1つとして送信されます.