如何根据点击聚焦于textarea?

发布于 2024-11-07 22:32:22 字数 1000 浏览 0 评论 0原文

我有一些代码,当用户单击“添加评论”链接时,它会在其旁边查找某个命名的 div,并向下滑动该 div。在该 div 内部我有一个文本区域。

我的目标是当用户单击“添加评论”链接时将焦点设置在文本区域上。 我遇到的问题是我将有多个评论/文本区域/添加评论链接,我需要它,所以当您单击“添加评论”时,它会关注相应的文本区域。

这是我到目前为止所拥有的:

jQuery

$(".add-comment-btn").click(function(){
    $(this).next(".inline-comment-form").slideToggle(200);
    $(this).next(".inline-comment-form textarea").focus();
    return false;
});

HTML

<a class="add-comment-btn" href="#">Add Comment</a>         

<div class="inline-comment-form">
<form action="" method="post">
        <div class="textarea">
            <textarea class="inline-comment-textarea" name="comment-textarea"></textarea>
        </div>
        <input value="SUBMIT" name="submit-inline-comment" class="form-btn" type="submit">

    </form>
</div><!--/Inline Comment Form -->  

编辑: 我更新了代码以添加“添加评论”链接并移动了 return false

I have some code that when a user clicks on a link "Add Comment", it looks a certain named div next to it and slidetoggles down that div. Inside of that div I have a textarea.

My goal is to set the focus on the textarea when the user clicks the "Add Comment" link.
The problem I'm running into is I will have multiple comments/textareas/add comment links and I need it so when you click on "Add Comment" it focuses on the corresponding textarea.

Heres what I have so far:

jQuery

$(".add-comment-btn").click(function(){
    $(this).next(".inline-comment-form").slideToggle(200);
    $(this).next(".inline-comment-form textarea").focus();
    return false;
});

HTML

<a class="add-comment-btn" href="#">Add Comment</a>         

<div class="inline-comment-form">
<form action="" method="post">
        <div class="textarea">
            <textarea class="inline-comment-textarea" name="comment-textarea"></textarea>
        </div>
        <input value="SUBMIT" name="submit-inline-comment" class="form-btn" type="submit">

    </form>
</div><!--/Inline Comment Form -->  

Edit: I updated the code to add the Add Comment link and moved the return false

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

抚笙 2024-11-14 22:32:22

http://jsfiddle.net/Frgxv/

$(".add-comment-btn").click(function(){
    $(this).next(".inline-comment-form").slideToggle(200)
           .find("textarea").focus();

    return false;
});

next 仅适用于兄弟姐妹, textarea 不是同级。

http://jsfiddle.net/Frgxv/

$(".add-comment-btn").click(function(){
    $(this).next(".inline-comment-form").slideToggle(200)
           .find("textarea").focus();

    return false;
});

next only works with siblings, the textarea isn't a sibling.

时光匆匆的小流年 2024-11-14 22:32:22

嘿,试试这个: http://jsfiddle.net/jackrugile/XNkES/

我正在使用以下代码似乎有效:

$(this).next(".inline-comment-form").slideToggle(200).find('textarea').focus();

Hey, give this a try: http://jsfiddle.net/jackrugile/XNkES/

I am using the following code that seems to work:

$(this).next(".inline-comment-form").slideToggle(200).find('textarea').focus();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文