使用jQuery

时间:2016-10-04 16:30:42

标签: jquery capitalize

我使用以下jQuery来大写输入脚本的第一个字母。

$('li.capitalize input').keyup(function(event) {
    var textBox = event.target;
    var start = textBox.selectionStart;
    var end = textBox.selectionEnd;
    textBox.value = textBox.value.charAt(0).toUpperCase() + textBox.value.slice(1);
    textBox.setSelectionRange(start, end);
});

此外,我现在需要在包含字母和数字的字符串中将特定位置(不是第一个字母)的字母大写。

例如: Da1234Z 我需要大写 D Z

我该怎么做?

2 个答案:

答案 0 :(得分:2)

您可以使用此函数来大写字符串的第n个字符:

function capitalizeNth(text, n) {
    return (n > 0 ? text.slice(0, n) : '') + text.charAt(n).toUpperCase() + (n < text.length - 1 ? text.slice(n+1) : '')
}

如果您知道n不能为负数,您甚至可以将其缩短为:

function capitalizeNth(text, n) {
    return text.slice(0,n) + text.charAt(n).toUpperCase() + text.slice(n+1)
}

答案 1 :(得分:0)

谢谢大家。 我得像这样把第7个字母大写:

<script>
jQuery.noConflict();
jQuery(document).ready(function($) {
$('li.capitalize input').keyup(function(event) {
var textBox = event.target;
var start = textBox.selectionStart;
var end = textBox.selectionEnd;
textBox.value = textBox.value.slice(0,7) + textBox.value.charAt(7).toUpperCase() + textBox.value.slice(8);
textBox.setSelectionRange(start, end);
});
});
</script>