我有一个onkeyup函数来修改以大写字母输入的文本字母。
当我尝试在输入文本的中间编辑一个字母时,光标将自动定位在文本的末尾。
我希望光标保持相同的位置。
https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_onkeyup
答案 0 :(得分:0)
试试这个:
<input type="text" id="fname" onkeypress="myFunction()">
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
答案 1 :(得分:0)
我不知道你为什么需要这样的东西。但是试试#fname{
text-transform: uppercase;
}
,这会有所帮助。
<input type="text" id="fname" onfocusout="myFunction()">
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
这是使用简单的CSS。 如果最后需要大写值,您可以在使用该CSS后尝试此操作。
profile.setPreference("dom.ipc.plugins.enabled.libflashplayer.so","true");
答案 2 :(得分:0)
仅限大写第一个字母:
function capitalizeFirstLetter(string) {
return string.charAt(0).toUpperCase() + string.slice(1);
}
ToCase所有字母
this.value.toUpperCase();
答案 3 :(得分:-1)
$("#fname").on('input', function(){
var start = this.selectionStart,
end = this.selectionEnd;
this.value = this.value.toUpperCase();
this.setSelectionRange(start, end);
});
如果你想只将第一个后者设为upperCase而将所有其他设备设为小写。你可以做到这一点。
#fname {
text-transform: lowercase;
}
#fname:first-letter {
text-transform: uppercase;
}
但请仅使用课程制作一些风格。