使用jQuery在IE8中取消选择文本框的焦点

4

我试图让表单选择框(或高亮)在您切换到下一个输入时默认选中文本。为了使此功能在IE8中正常工作,我不得不在我的密码表单字段上添加.select()函数。是否有与jquery .select()相当的反选文本的方法?

       $("#MyTextBox").focus(function() {
            $(this).select();
        });

        $("#MyTextBox").blur(function() {
            // Deselect here
        });
2个回答

5
我不知道有没有这样的方法,但是下面的方法可能适合你使用:

我并不知道是否有其他方法,不过以下方法可能适用于你:

$(this).val($(this).val());

在这里,您将字段的值设置为其本身。光标应自动放在末尾。


5

James Wiseman的回答在IE8中完美运行,但至少对我来说,在Firefox 3.6.x中无法运行。

我知道原问题是针对IE8的,但为了帮助那些寻找适用于FF和IE的单一解决方案的人,我使用了以下代码:

var temptext = $(textbox).val();
$(textbox).val('');
$(textbox).val(temptext);

(其中textbox是要处理的文本框对象)。

它使用与James Wiseman的解决方案相同的理论,但在将文本框文本设置回原始字符串之前,它添加了将文本框文本设置为空字符串的特定步骤。希望这可以帮助您!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接