我使用以下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 。
我该怎么做?
答案 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>