jQuery清除焦点上的输入文本

我有这个jQuery脚本:

 $(document).ready(function() { $(':input:enabled:visible:first').focus(); $('.letters').keyup( function() { var $this = $(this); if($this.val().length > 1) $this.val($this.val().substr(0, 1)); $(this).next('input').focus(); }); }); 

它将重点放在页面加载的第一个input='text'字段上。 当用户输入字符时,它会将焦点移动到下一个输入字段。 它还将限制每个字段中允许的字符数(当前为1个字符)。

我想知道是否可以清除焦点上输入字段的当前值。 当用户点击cursror来聚焦字段时,以及当$(this).next('input').focus(); 将重点放在下一个输入字段上。

是否可以validation字符只允许字母字符?

要过滤输入,请使用

 ​$('input').on('keydown', function(e) { if( !/[az]|[AZ]/.test( String.fromCharCode( e.which ) ) ) return false; });​​​​​​​​ 

要清除clickfocus上的输入字段, click使用

 $('input').on('click focusin', function() { this.value = ''; }); 

当您以当前forms单击非聚焦输入控件时,请注意此事件将触发两次。

演示 : http : //jsfiddle.net/xbeR2/

要回答您的焦点问题,是的,您可以这样做:

 $("input").focus(function() { this.value = ""; }); 

要回答唯一的允许字母问题, 之前 已经 问 过这个问题。

用这个

 $( document ).ready(function() { var search_text_s = "WYSZUKAJ"; // author ZMORA // search input focus text $("#searchClear").focus(function() { if(this.value == search_text_s){ this.value = ""; } }).blur(function() { if(this.value != search_text_s){ this.value = search_text_s; } }); });