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 に答える