我试图使用jQuery基本上替换用户点击“输入”后文本框中文本末尾的光标
我有“输入”部分工作 – 但我不知道如何[在输入部分之后] – 我可以让光标返回到文本框内输入文本的末尾?
即,此时,当用户点击进入时 – 光标转到一个新行,我希望它基本上到达当前文本的末尾?
一些代码:
jQuery('#textBox').keyup(function (e) {
if (e.keyCode == 13) {
... submits textBox
}
jQuery(this).focus(function() {
var val = this.input.value; //store the value of the element
this.input.value = ''; //clear the value of the element
this.input.value = val; //set that value back.
)};
});
解决方法
如果您只是想阻止’enter’键创建换行符,可以使用preventDefault来阻止它.
$("textarea").keypress(function (event) {
if (event.which == '13') {
event.preventDefault();
}
});
fiddle
如果你真的想在输入中的任何地方按下输入以转到输入的末尾,你也可以重置将始终将光标放在输入末尾的值:
$("textarea").keypress(function (event) {
if (event.which == '13') {
var val = $(this).val();
$(this).val('');
$(this).val(val);
event.preventDefault();
}
});