2013-09-13 2 views
0

Я использую этот код. Ошибка отображается, но фокус не работает в firefox. Поскольку этот код работает в IE, я не могу сказать, что этот код полностью ошибочен.javascript input.focus() не работает в firefox 23

<form name="frm" action="search.php" method="post"> 
<input type="text" name="search" onblur="return check();"/> 
<input type="submit" name="submit" /> 
<strong id="err"></strong> 
</form> 

Я использую эту строку во внешнем javascript.

Этот код находится в valid.js

function check() 
{ 
var item=frm.search; 
var errr=document.getElementById('err'); 

if(item.value.length<3) 
{ 
item.focus(); 
errr.innerHTML="Entered String is very short"; 
return false; 
} 
} 

Пожалуйста, ответьте мне как можно скорее.

+2

Любые ошибки в консоли разработчика/Firebug? – Raptor

+0

Я использовал этот код во многих версиях firefox с разных компьютеров, но результат все тот же. – Abhimanu

ответ

1

попробовать это один

function check() 
{ 
var item = document.forms['frm'].elements['search']; 
var errr=document.getElementById('err'); 

if(item.value.length<3) 
{ 
errr.innerHTML="Entered String is very short"; 
    setTimeout(function() { 
    item.focus() 
}, 10); 
return false; 
} 
} 

демо jsfiddle http://jsfiddle.net/ff4vW/

+0

Нужно ли использовать jquery для этого? – Abhimanu

+0

@Abhimanu нет его чистого javascript – Sunny

+0

Thanx это работает на меня. – Abhimanu

0

Его хорошо, если вы используете document.getElementById()

Но если вы используете имя Затем вы должны использовать

var item = document.forms['frm'].elements['search']; 
+0

но focus() все еще не работает – Sunny

+0

Ошибка отображается, но фокус все еще не работает. – Abhimanu

0
var item = document.getElementsByName('search')[0]; 
+0

Это не работает для меня. – Abhimanu

+0

Он должен работать нормально. Какие ошибки вы видите в консоли? –

+0

ошибок нет. Ничего не происходит – Abhimanu

Смежные вопросы