日期:2014-05-16  浏览次数:20315 次

求助:如何让文本框重新获得焦点
如下代码:
<input   type= "text "   ...     onblur= "check(this) "   ...>

//check()是对文本框输入的数据进行校验的方法.
function   check(   data   ){
if(data.value   !=   " "   )
{
var   rexp1   =   /^[0-9]+$/;  
var   r1   =   data.value.match(rexp1);
if(r1   ==   null)
{
  alert( '数据错误 ');
}
}
}
现在问题是,在焦点离开后,校验数据错误,如何使焦点回到当前的文本框,方便对数据进行修改?


------解决方案--------------------
alert( '数据错误 ');
data.focus();注意别有其他的文本框很容易死循环的
------解决方案--------------------
function check( data ){
if(data.value != " " )
{
var rexp1 = /^[0-9]+$/;
var r1 = data.value.match(rexp1);
if(r1 == null)
{
alert( '数据错误 ');
data.value= ' ';
data.focus();
}
}
}