使用javascript在keypressevent上将small转换为大写

时间:2013-02-08 05:55:20

标签: javascript

如果在触发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 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:1)

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

<script type="text/javascript">
    function convertCase(elem)
    {
        elem.value = elem.value.toUpperCase();
    }
</script>
<input onkeypress="convertCase(this);" type="text" id="txt1" />

答案 2 :(得分:0)

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

Event and timing

答案 3 :(得分:-1)

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

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

            textBx.onblur = function () {
                this.value = this.value.toUpperCase();
            };
        };