jQuery此上下文 [英] jquery this context

查看:66
本文介绍了jQuery此上下文的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我有两个这样的div:

let's say I have two divs like this:

<div class="myDiv">
    <textarea class="info_box" attribute="first" rows="4" cols="40">Enter text here...</textarea>
    <button class="submit_btn">Click me!</button>
</div>

<div class="myDiv">
    <textarea class="info_box" attribute="second" rows="4" cols="40">Enter text here...</textarea>
    <button class="submit_btn">Click me!</button>
</div>

当我单击"submit_btn"按钮时,我希望能够获得每个div内的文本区域.我尝试过这样的事情:

I want to be able to get the textarea within each div when I click on my button 'submit_btn'. I tried something like this:

$('body').delegate('.myDiv .submit_btn', 'click', function(){
    var myTextarea = $('.info_box', this);
});

但是返回未定义

请帮助

推荐答案

您可以执行以下操作:

$('body').delegate('.myDiv .submit_btn', 'click', function(){
    var myTextarea = $(this).closest('myDiv').find('.info_box');
});

另一种解决方案:

$('body').delegate('.myDiv .submit_btn', 'click', function(){
    var myTextarea = $(this).siblings('.info_box');
});

请注意,如果您的jQuery版本比1.7更新,最好使用on而不是delegate.

Note that if you have a version of jQuery more recent than 1.7, it's better to use on instead of delegate.

这篇关于jQuery此上下文的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆