我需要替换默认的keypress-event,以便在键入时对文本进行额外的(即时)转换。试试这个:
field.keypress(function(e){
field.val(function(i, val){
return val.toUpperCase();
});
return false;
});
但输入没有完全填充,这是可以理解的原因。但是如何?)
请不要建议“text-transform”,toUpperCase()只是一个例子。 ))
答案 0 :(得分:3)
keypress
事件在实际修改文本字段之前触发。
您应该将该函数绑定到keyup
事件。
此keyup
事件仅在每次击键时触发一次。如果按a键,则会在每个字符填充文本字段之前触发keypress
事件。 {/ 1}}事件仅在发布密钥后触发。因此,如果您按住 e 10秒钟,输入字段将包含小写keyup
字符,直到您抬起手指。