JavaScriptでreadonly属性を操作
JavaScriptのDOMを使って要素のreadonly属性を変更しようとするときには、readOnlyと書かなければならない。
初歩的だけど忘れているとハマる。
Firefoxでは小文字のreadonlyでも操作できるが、IEだとreadOnlyである必要がある。
IEの場合はreadonly状態でもinput要素の背景色は白のままなので、クラス名を変更するなどして背景色を変えるのがいい。
// via prototype.js $("hoge").readOnly = "readonly"; Element.addClassName($("hoge"), "readonly");
disabledを使う手もあるが、disabledを使うとinput要素の値が送信されなくなる。readonlyなら送信される。時と場合によって使い分け。
コメントを残す