フィールド値を大文字に変換しようとする JavaScript で、Chrome (バージョン 22.0.1229.79) のバグ (先週から) に遭遇しました。同時にフィールド値を大文字に見せている CSS (text-transform:uppercase) と競合しているようです。
タブでフィールドの外に出ると、onChange イベント ハンドラーはフィールド値を大文字に変更しようとしますが、その結果、フィールドが空になります。ただし、フィールドにもう一度入力しようとすると、以前のテキストが再び表示されます。
他の誰かが同じものを見たことがありますか?Googleに報告する必要があると思います。
ここにテストケースがあります... http://jsfiddle.net/fhBx2/2/
<script>
function upperKey(obj)
{
var val = obj.value;
if(val != null)
{
obj.value = val.toUpperCase();
}
}
</script>
<input type="text" style="text-transform:uppercase;"
onchange="upperKey(this);"/>