0

onkeypress如何在触发事件时键入小后者时转换大写?我的函数在 Internet Explorer 中运行,但在 Google Chrome 和 FireFox 中不运行。

function Capital(evt) [
    key = (evt || window.event) ? evt.keyCode : evt.which;
    if (key >= 97 && key <= 122) {
        if ((evt || window.event)) evt.keyCode = evt.keyCode - 32;
        else evt.which = evt.which - 32;
    }
}

这个函数调用onkeypress="Capital(event)"

4

4 回答 4

2

这根本不需要 JS,只需text-transform: uppercase;为您的元素设置即可。

于 2013-02-08T06:14:04.240 回答
1

很容易。将元素传递给您的函数并转换 .

<script type="text/javascript">
    function convertCase(elem)
    {
        elem.value = elem.value.toUpperCase();
    }
</script>
<input onkeypress="convertCase(this);" type="text" id="txt1" />
于 2013-02-08T06:03:16.177 回答
0

document.getElementById('my-ok').onkeypress = function() {
  var self = this
  setTimeout(function() {
    self.value = self.value.toUpperCase()
  }, 0)
}
<input id='my-ok' type="text">

事件和时间

于 2016-09-23T06:17:20.480 回答
-1

我建议不要在按键上编写脚本,而是将其写在下面的模糊事件上。

 window.onload = function () {
            var textBx = document.getElementById("txt");

            textBx.onblur = function () {
                this.value = this.value.toUpperCase();
            };
        };
于 2013-02-08T06:09:45.987 回答