現在、javascriptメソッドのテキストボックスで大文字を強制しようとしています。このメソッドは、「keypress」イベントで呼び出されてテキストボックスに入るように設定されています。
IEとFFの検出で大文字に変更する私の方法は次のとおりです。
//some code to detect the kind of key pressed based on numeric value,
//if lowercase detected then continue
var key;
if(window.event){ //working IE code
//key = window.event.keyCode;
window.event.keyCode-=32;
}
else if(e){ //broken FF code
key = String.fromCharCode(keycode).toUpperCase()
e.value = e.value.toUpperCase();
}
この現在のコードは、e.valueがfirebugで未定義であることを示しています。e.toUpperCase()だけを試してみると、firebugはtoUpperCaseが存在しないと言っています。e.valueを'key'に設定しようとしました。これはエラーを返しませんが、大文字に変更されません。私はe.whichを直接変更しようとしましたが、もちろん、それは読み取り専用であり、そのようなことを示すエラーを返します。
私はここで何が欠けていますか?ここで何を変更しても問題はないと思います。たとえば、これはまだ小文字の値として設定されています。また、編集できないため、元の小文字のe。どの文字がテキストボックスにプッシュされています。