2010-06-09 54 views

回答

14

你可以看看this article

让我们假定我们有如下文字输入:

<input type="text" id="txtInput" /> 

在大多数情况下,我们希望有可用于在我们网站上的所有 文本框这个功能,因此我们将创建一个函数来处理 这个,并根据需要调用它。使用期望的 参数调用此函数将使执行文本的突出显示。

function selectAllText(textbox) { 
textbox.focus(); 
textbox.select(); } 

假设你正在开发对DotNetNuke的5,或者已经jQuery的已经导入到你的网站,添加下面的jQuery到您的网站为每个文本框。 (如果你有很多的文本框,我们可以做到这一点不同,但是这是一个不同的职位。)

jQuery('#txtInput').click(function() { selectAllText(jQuery(this)) }); 
4

你可以这样做:

$('input').click(function() { 
// the select() function on the DOM element will do what you want 
this.select(); 
}); 

当然,你不能单击元素以选择输入的任意一点,所以它可能是更好的开火focus的而不是事件click

Quick Demo w/ clickw/ focus

+0

这是像Pinky gnarf过去说pinky和大脑? – Zoidberg 2010-06-09 11:20:30

+0

@Zoidberg - 不会,那会是'narf' ---虽然发音相同,但'gnarf'只是我的姓氏倒退。 – gnarf 2010-06-09 11:22:25

15

无需jQuery的,这是与DOM简单,所有的主流浏览器的工作原理:

input.onfocus = function() { this.select(); }; 

如果必须使用jQuery做,有非常小的差别是:

$(input).focus(function() { this.select(); }); 
+2

不知道这是否会在IE 6中工作...但谁在乎!嘿嘿呵呵 – Zoidberg 2010-06-09 15:42:54

+0

会的。我敢肯定,非jQuery版本将在IE 3中工作。当然,IE 4。 – 2010-06-09 16:00:55

1

我知道这是不是jQuery的,但对于一个完整性

onclick="this.select();" 

例如:

<input type="text" value="abc" onclick="this.select();"/> 
2

这个最适合我nswers这个问题,你可以在文本输入本身使用。

$('myTextbox').select(); 
1

哪里我一般就这么做是

$(document).ready(function() { 
    $('#myTextBox').focus(); 
    $('#myTextBox').select(); 
} 

的,我想填在第一个文本框 这样,如果我保持状态。如果用户回溯到页面,则它会自动突出显示所有文字以进行打字。

有用的技术,如搜索框的东西...

相关问题