2012-10-01 7 views
8

フィールド値を大文字に変換しようとしているJavaScriptがあるChrome(バージョン22.0.1229.79)にバグ(先週から)があります。それはフィールド値を同時に大文字のに見せているCSS(text-transform:大文字)と矛盾しているようです。
フィールドからタブ移動すると、onChangeイベントハンドラはフィールド値を大文字に変更しようとしますが、その結果、フィールドは空になります。しかし、フィールドに再度入力しようとすると、前のテキストが再び表示されます。Google-v.22のテキストトランスフォーム:大文字のバグ

誰も同じことを見たことがありますか? Googleに報告する必要があると思う。ここで

は実際にこれで問題を持っている人のため

<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);"/> 
+2

ナイスキャッチ:

$(function() { $('input').change(function(e) { var val = $(this).val().toUpperCase(); $(this).val('').val(val); }); });​ 

が更新フィドルを参照してください!もしあなたがそれを報告すれば、Googleからいくつかのお金を得ることができます:http://blog.chromium.org/2010/01/encouraging-more-chromium-security.html –

+0

@Perrolocoここにセキュリティ問題はありますか?あなたはバグ報告サイトにOPを指すほうがよいでしょう:http://new.crbug.com/ –

+0

奇妙な;フィールドが「クリア」された後にフィールドに入力を再開すると値が返されます –

答えて

3

http://jsfiddle.net/fhBx2/2/が、私はあなたがして、ブランクとに値をリセットすることで、回避策を行うことができますことを発見しました...それのためのテストケースであります元の値に戻りますが、大文字です。 http://jsfiddle.net/JXA8K/2/

+0

リソースの無駄遣いです。CSSルールを

関連する問題