目前我正在尝试在 javascript 方法的文本框中强制大写。此方法设置为在“按键”事件上调用以进入文本框。
这是我通过 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() 萤火虫说 toUpperCase 不存在。我尝试将 e.value 设置为 'key',它不会返回错误但不会更改为大写。我曾尝试直接更改 e.which 但当然,它是只读的,并返回这样的错误。
我到底在这里想念什么?我相信无论我在这里更改什么,e.which 仍然设置为小写值,并且因为我无法以任何方式对其进行编辑,所以问题在于原始的小写 e.which 字符被推送到文本框。