Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery获取内部<;tr>;a<;表>;使用.find()方法使用不同的类_Javascript_Jquery_Find - Fatal编程技术网

Javascript jQuery获取内部<;tr>;a<;表>;使用.find()方法使用不同的类

Javascript jQuery获取内部<;tr>;a<;表>;使用.find()方法使用不同的类,javascript,jquery,find,Javascript,Jquery,Find,我正在尝试使用jQuery返回一个值,该值包含在我的数据表中检查的所有行。如果span class=“checked”(第一行和第三行)和span class=“checked”(第二行)未选中,则选中一行。是否有一种使用jQuery.find()方法返回所有行的快捷方式。与遍历所有行并比较span class属性相反 我知道我可以使用find()获取所有行。但是,有没有办法在jqueryfind方法中定义内部元素呢 <table id="myTable"> <tr>

我正在尝试使用jQuery返回一个值,该值包含在我的数据表中检查的所有行。如果span class=“checked”(第一行和第三行)和span class=“checked”(第二行)未选中,则选中一行。是否有一种使用jQuery.find()方法返回所有行的快捷方式。与遍历所有行并比较span class属性相反

我知道我可以使用find()获取所有行。但是,有没有办法在jqueryfind方法中定义内部元素呢

<table id="myTable">
<tr>
    <td>
        <div class="checker">
            <span class="checked">
                <input type="checkbox" value="1" class="checkboxes">
            </span>
        </div>
    </td>
    <td> blah
    </td>
</tr>
<tr>
    <td>
        <div class="checker">
            <span class="">
                <input type="checkbox" value="1" class="checkboxes">
            </span>
        </div>
    </td>
    <td> blah
    </td>
</tr>
<tr>
    <td>
        <div class="checker">
            <span class="checked">
                <input type="checkbox" value="1" class="checkboxes">
            </span>
        </div>
    </td>
    <td> blah
    </td>
</tr>
</table>

废话
废话
废话
您应该使用“
最近的”
”:

如果勾选了复选框,则可以通过直接测试来完成

$('#myTable input[type="checkbox"]:checked').closest('tr')

您可以使用
:has
选择器或
has
方法:

$('#myTable').find('tr:has(span.checked)');
或:


这是我的解决方案,它使用了
.closest()
.find()

您提供的.find()非常有效@未定义
$('#myTable').find('tr:has(span.checked)');
$('#myTable tr').has('span.checked');
$(document).ready(function(){
    $(".checkboxes").click(function(){
         $(this).closest('tr').find('td').toggleClass('blue');
    });
});