Как установить фокус на виджет tag-it?
Я просто хочу, чтобы виджет tag-it имел фокус после загрузки страницы. Я пробовал разные вещи, такие как:
<script type="text/javascript">
$("#myTags").tagit("tagInput").click();
</script>
а также
<script type="text/javascript">
$("#myTags").tagit("tagInput").focus();
</script>
и даже более экзотические вещи, такие как использование JQuery для изменения идентификатора и вызова
<script type="text/javascript">
$("#newIDiTriedToMake").focus();
</script>
Ничто из того, что я делаю, кажется, не дает фокусу клавиатуры виджет tag-it. Я должен либо перейти к ней через свою страницу, либо щелкнуть по ней мышью вручную, чтобы начать вводить теги. У кого-нибудь есть подсказки для меня?
3 ответа
Я думаю, что вы оба на ходу, что документ не закончил сборку (и, следовательно, элемент, вероятно, не существует), когда я пытаюсь установить фокус. Однако я решил проблему простым способом: редактирование исходного кода.
Я только добавил
this.tagInput.attr('autofocus', 'autofocus');
к методу _create() tag-it, который дает фокус элементу без необходимости прибегать к совершенству Javascripty. Это сработало.
Я думаю, что все, чего вам не хватает - это построить DOM, прежде чем вы установите фокус. Это если.tagit("tagInput") ссылается на фокусируемый элемент. Ты можешь попробовать:
<script type="text/javascript">
$(function() {
$("#myTags").tagit("tagInput").focus();
});
</script>
Вы должны сосредоточиться, когда у вас есть документ.
<script type="text/javascript">
$(document).ready(function(){
$("#newIDiTriedToMake").tagit("tagInput").focus();
})
</script>