可能重复:
Stop cursor from jumping to end of input field in javascript replace
我想使用JavaScript强制文本框的值为小写。我已经尝试了下面的代码,但每次按一下键时光标都会跳到输入的末尾。我怎么能避免这个?
$("#beLowerCase").keyup(function(){
$(this).val( $(this).val().toLowerCase() );
});
答案 0 :(得分:120)
$("#beLowerCase").on('input', function(){
// store current positions in variables
var start = this.selectionStart,
end = this.selectionEnd;
this.value = this.value.toLowerCase();
// restore from variables...
this.setSelectionRange(start, end);
});
(fiddle)
这实际上也适用于CSS:
#beLowerCase{
text-transform:lowercase;
}
服务器可以处理实际的下壳...