2017-06-20 92 views
0

我有选择的元素关注最近选择的div元素

<select id="tokenize" multiple="multiple" 
class="tokenize" style="margin: 0px; 
padding: 0px; border: 0px; display: none;"/> 

在选择元素有DIV它是

<div class="tokenize Tokenize"> 
<ul class="TokensContainer ui-sortable"> 
<li class="Placeholder" style="display: list-item;"> 
enter Position</li><li class="TokenSearch"> 
<input size="5"></li></ul><ul class="Dropdown" 
style="display: none;"></ul></div> 

我想集中(有光标)该分区是最近选择。该div创建动态通过javascript,所以我不能修复它从HTML所以我尝试javascript.I想要关注的div(它是类标记化)这是最接近的选择元素(它是ID标记化)

我尝试这一点,但这个不行

document.getElementById(Select-Element-ID).firstElementChild.focus().select(); 

回答

0

你必须在tabindex属性添加到div,使其可成为焦点。
来源:https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex

UPDATE:

var $inputToFocus = document.getElementById(Select-Element-ID).nextElementSibling.querySelector('.TokenSearch input'); 

$inputToFocus.focus(); 
+0

而是由第三方jQuery插件产生的股利(whic类名是记号化),我尝试哟理解它,但它太复杂 – user1688401

+0

谢谢,我加了你的代码它不给错误,但它不集中.. .. http://pratikisara.com/Home/Quick你可以在这里看到(标题:Mesleğiniz/ Unvan在那里标题有选择像文本区域,它是自动完成的,你可以inpu“亚兹”,然后选择任何项目然后你的代码工作,但它不关注) – user1688401

+0

好吧,你正试图更新错误的元素。我已经更新了答案。 –

0

这是使用jQuery的你的问题的最先进的解决方案.. ,但非常简单

$( “#记号化”)。最接近( “DIV”)聚焦();