我自动搜索文本输入,当用户键入字母时进行新搜索。现在我必须在每次搜索后关注这个元素,但我在除Firefox之外的所有浏览器中都选择了输入中的文本。如果用户键入另一个字母,则删除所选文本,这意味着用户必须取消选择文本才能用户输入另一个字母。当然用户会输入新的字母并认为该程序有问题。
是否可以取消选择焦点上的文字或阻止首选的选择?
答案 0 :(得分:3)
在焦点上将文本框的值分配给自身将取消选择文本。
$('input').focus(function() {
var elem = $(this);
elem.val(elem.val());
} );
答案 1 :(得分:0)
我不太确定,但我认为这可能是一个解决方案或只是使用属性onselect="return;"
$('#selector').select(function (e){
e.preventDefault();
return;
});
答案 2 :(得分:0)
我使用以下代码:
var searchInput = $('input.search');
var l = searchInput.val().length;
searchInput.attr('selectionStart', l);
searchInput.attr('selectionEnd', l);
searchInput.focus();