0

我正在使用以下代码将输入到文本框中的第一个字母大写。问题是当您切换到另一个文本框,然后返回并输入一些内容时,它不会删除那里的内容.. 它会附加您输入的内容。

这可以解决吗?

$(function () {
    $('.userBox').on('DOMAttrModified textInput input keypress paste focus', 
      function (e) {
         $(this).val($(this).val().slice(0, 1).toUpperCase() + 
                $(this).val().slice(1));
      });
});

演示:http: //jsfiddle.net/VBXbz/8/

4

2 回答 2

1
<script type="text/javascript" language="javascript">
    function Capitalize(id) {
        var txt = document.getElementById(id);
        txt.value = txt.value.replace(/\w\S*/g, function (txt) { return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); });
    }
</script>

萨拉特@f1

于 2014-08-25T06:07:56.903 回答
0

我只是将焦点绑定到另一个将清除输入字段内容的函数。像这样:

$('.userBox').on('focus', function (e) {
    $(this).val("");
}); 

然后你基本上有http://jsfiddle.net/KWRef/

除非我错过了你想提出的一些观点?

于 2013-02-14T19:29:29.063 回答