1

每次更改输入字段的内容时,我都想执行 toUpperCase() 。我的意思不是当字段失去焦点时,而是每次输入一个字符时。

我试试这个不起作用(我对 JQ 很陌生)!

$(".myClass").change(function () {
        $(this).val().toUpperCase();
});

此外,该功能仅在模糊时启动。

怎么了?

4

4 回答 4

2
$('.myClass').on('input', function() {
     $(this).val($(this).val().toUpperCase());
});
于 2014-04-23T14:53:50.790 回答
0

函数将触发change事件,但您需要重置该值,.val()因为仅将文本设置为toUpperCase()是不够的。

$(".myClass").change(function () {
        $(this).val($(this).val().toUpperCase());
});

小提琴演示

于 2014-04-23T14:56:39.947 回答
0

您应该使用另一个键盘事件:

https://api.jquery.com/keypress/

$( "#test" ).keypress(function(e) {
    $(this).val($(this).val().toUpperCase());
});
于 2014-04-23T14:55:11.710 回答
0

要将浏览器输入中的字符限制为大写,请使用 css-

someinput{text-transform:uppercase}

然后在提交之前使用任何更改事件或验证来更改您发送到服务器的值。

于 2014-04-23T15:09:13.343 回答