2012-08-30 67 views
0

我只是射擊這樣的:焦點()在任何導航儀無法正常工作

setTimeout(function() { $('nombreAsegurado').focus(); }, 0); 

這是關係到一個下拉菜單中,當在搜索輸入的用戶點擊,將顯示一個下拉菜單,然後用戶選擇一個項目,菜單消失,然後我想專注於輸入,以便用戶可以在下拉菜單中選擇之前選擇的圖章進行搜索。

我正在與原型框架(我討厭它)。這個輸入被一個ajax請求調用,這是否與這個問題有關?

元素:

 <input type="text" value="Ingrese" size="20" maxlength="60" name="nombreAsegurado" id="nombreAsegurado" style="color: #666666;font-family: Verdana,Arial,Helvetica,sans-serif;font-size: 10px;vertical-align:middle;background: url(${self.monitor.basePath}images/input_bg.png) repeat-x scroll 0 0 transparent;border: 1px solid #C4C4C4;padding: 2px 4px;" onclick="if(this.value=='Ingrese Asegurado') this.value=''; this.style.border='1px solid #C4C4C4'; DisplayOptions();" onkeypress="if (event.keyCode==13) buscar_asegurado();" onblur="CloseOptions();"> 
+0

所以有一個ID爲「nombreAsegurado」的元素? – Pointy

+0

的確,我忘了粘貼HTML。我會編輯它。謝謝 –

+0

那麼[簡單情況](http://jsfiddle.net/bbQy9/)似乎對我來說工作得很好(在Firefox中)。該函數運行時該輸入元素是否可能不存在? – Pointy

回答

0

它解決了,我改變了這條線的位置:

setTimeout(function() { $('nombreAsegurado').focus(); }, 0); 

,我已經把它放在我的函數結束。