jquery设置焦点在下一个div中的元素

时间:2012-09-21 14:26:15

标签: jquery focus

点击标题链接时,我正在尝试将焦点设置在textarea元素上。 这是HTML:

<h2 class="trigger active"><a href="#" id="">header</a></h2>
<div class="toggle_container" style="display:block;">
    <div class="block" id="1">
        <div>Blah</div>

        <textarea name="VALUE">Blah blah</textarea>

    </div>
</div>

单击H2时,如何相对定位Textarea?

我准备了一个jsfiddle: http://jsfiddle.net/MkePe/3/

任何帮助表示赞赏..

更新: 已经有了一个可行的解决方案,但是当DIV没有完全正确的内容时,一切都会崩溃。如果没有Textarea,get(0)方法会产生JS错误。是否有一个灵活的解决方案,也记住这一点?这是非工作小提琴: http://jsfiddle.net/3AbHY/3/

3 个答案:

答案 0 :(得分:3)

您修改的小提琴HERE

在h2点击处理程序中:

$(this).next().find('textarea').focus();

答案 1 :(得分:1)

通过向TextArea添加ID id="toFocusArea",您的HTML将变为:

<h2 class="trigger active"><a href="#" id="">header</a></h2>
<div class="toggle_container" style="display:block;">
    <div class="block" id="1">
        <div>Blah</div>

        <textarea name="VALUE" id="toFocusArea">Blah blah</textarea>

    </div>
</div>

点击事件处理程序将直接在TextArea上使用focus

$("#toFocusArea").focus();

答案 2 :(得分:0)

检查:

http://jsfiddle.net/MkePe/4/

您必须在文档准备好后加载。​​