readOnlyにはまった

ひさびさにはまった。

他人が書いたプログラムを移植している。けっこうしんどい。

そのなかで、ある条件の下でフォームのinput要素の値をジャバスクリプトで
設定してから送信するという凝ったページがある。

組み合わせが、2×3×3通りもあるので複雑だ。
このアプリはカットオーバーしてから順調に動いていた。

ところが、この数日。
更新できないとのクレームが散見するようになった。

調べてみると、ある組み合わせの場合にinput属性の「0」が送信されていない
ということが判明した。

もともとの作成者のジャバスクリプトは順調に動いている。

おかしいと思いながらよくよく見ると。

input属性にdisabledを指定していた。valueは0にして。

当然のことながら値は送信されない。だからupdateが失敗する。

バグだった。

しかたがないのでreadonly属性を使うことにした。

ところがである。うまくいかない!

いろいろ触っていて、わかったことがある。

Firefoxでは小文字のreadonlyでいけるが、IEだとreadOnlyでないといけない。

readOnlyとOが大文字でないといけないのだ。

見事にハマってしまった。

3時間は無駄にしてしまった。
昔、そんな記事を読んだ記憶があるが覚えていない。

めっちゃ疲れたが、それもこれも久々にWEBアプリに挑戦したからだ。

しかし、よい刺激を受けた。使っていない脳の部分が熱く感じる。

ま、そんな気分。

まだまだハマりそう。