0

我有以下代码将 TextBox 值更改为大写。它仅适用于前两个 keyup 事件。例如“ab”到“AB”。但不会将“abc”更改为“ABC”。我不知道发生了什么。jsFiddle在这里。

<input type="text" class="FrmTextBox" id="Code">
<div id="output">

$(document).ready(function(){
    $(".FrmTextBox").keyup(function(key){
        $("#output").html($(this).val($(this).val().toUpperCase()));
    });
});
4

4 回答 4

2

而不是 html() 你可以在这里给出文本是代码尝试一下

$(document).ready(function(){
    $(".FrmTextBox").keyup(function(key){
        $("#output").text($(this).val($(this).val().toUpperCase()));
    });
});
于 2013-03-01T06:57:57.307 回答
1

试试这个

$(document).ready(function () {
    $(".FrmTextBox").keyup(function (key) {
        $(this).val($(this).val().toUpperCase());
        $("#output").html($(this).val());
    });
});
于 2013-03-01T06:54:43.703 回答
0

$(elem).val(newValue)返回一个 jQuery 对象而不是值。$(elem).val()(不带任何参数)返回值。

如果您需要设置值并返回它,请使用:$(elem).val(newValue).val()

在您的情况下,这将是:

$(document).ready(function(){
    $(".FrmTextBox").keyup(function(key){
        $("#output").html($(this).val($(this).val().toUpperCase()).val());
    });
});
于 2013-03-01T06:54:34.597 回答
0

CSS怎么样:

input.upper { text-transform: uppercase; }
于 2013-03-01T06:59:59.433 回答