私信  •  关注

gaetanoM

gaetanoM 最近创建的主题
gaetanoM 最近回复了

实际上我想删除除第一个元素之外的所有元素。

因此,您可以选择除第一个元素之外的所有元素:

$(".parent-row>.row:not(:first)")

$(document).ready(function () {
    $("button").on('click', function (e) {
      $(".parent-row>.row:not(:first)").remove();
    });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="parent-row">
    <div class="row">
        A
    </div>
</div>

<div class="parent-row">
    <div class="row">
        B
    </div>
</div>

<div class="parent-row">
    <div class="row">
        C
    </div>
</div>
<button type="button">Reset</button>

实际上,我想删除.row元素的所有子元素,除了一个块。

在这种情况下,您可以组合 :contains() :not() 选择器:

$(".parent-row>.row:not(:contains(A))")

$(document).ready(function () {
    $("button").on('click', function (e) {
        $(".parent-row>.row:not(:contains(A))").remove();
    });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<div class="parent-row">
    <div class="row">
        A
    </div>
</div>

<div class="parent-row">
    <div class="row">
        A
    </div>
    <div class="row">
        B
    </div>
</div>

<div class="parent-row">
    <div class="row">
        A
    </div>
    <div class="row">
        B
    </div>
    <div class="row">
        C
    </div>
</div>
<button type="button">Reset</button>

如果,相反,你正在寻找你可能 .filter() :

$(".parent-row>.row").filter((idx, ele) => ele.textContent.trim() != 'A').remove();

$(document).ready(function () {
    $("button").on('click', function (e) {
        $(".parent-row>.row").filter((idx, ele) => ele.textContent.trim() != 'A').remove();
    });
});
<script src=“https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js”></script>


<div class=“父行”>
<div class=“row”>
一
&L/DIV & GT;
&L/DIV & GT;

<div class=“父行”>
<div class=“row”>
一
&L/DIV & GT;
<div class=“row”>
乙
&L/DIV & GT;
&L/DIV & GT;

<div class=“父行”>
<div class=“row”>
一
&L/DIV & GT;
<div class=“row”>
乙
&L/DIV & GT;
<div class=“row”>
C
&L/DIV & GT;
&L/DIV & GT;
<button type=“button”>重置</按钮>
4 年前
回复了 gaetanoM 创建的主题 » jquery click事件自定义属性未定义

使用 arrow function expression 意味着 不是你想要的。 在这种情况下,您需要使用 事件.目标 :

jQuery('.js-category-delete').on('click', (event) => {
        let id = jQuery(event.target).attr('data-id');
        console.log(id);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<button type="button" class="js-category-delete" data-id="1">
    Delete
</button>

$('table.stable td:nth-child(2):empty')

$('table.stable td:nth-child(2):empty').closest('tr').hide()

有关详细信息,请参阅 :nth-child() :empty .closest()

$('table.stable td:nth-child(2):empty').closest('tr').hide()
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<table class="stable">
    <tr class="spec_tit">
        <th colspan="2">Resident Evil 7</th>
    </tr>
    <tr class="spec_cpu">
        <td class="tdr">CPU</td>
        <td class="tdl">Intel Core i5 4460 @2.70GHz / AMD FX 6300</td>
    </tr>
    <tr class="spec_ram">
        <td class="tdr">RAM</td>
        <td class="tdl">8GB</td>
    </tr>
    <tr class="spec_gra">
        <td class="tdr">Graphics</td>
        <td class="tdl"><strong>2GB</strong>, nVidia GeForce GTX 760 / AMD Radeon R7 260x</td>
    </tr>
    <tr class="spec_sha">
        <td class="tdr">Shader Model</td>
        <td class="tdl"></td>
    </tr>
    <tr class="spec_dis">
        <td class="tdr">Disk space</td>
        <td class="tdl">24GB</td>
    </tr>
    <tr class="spec_aud">
        <td class="tdr">Audio</td>
        <td class="tdl">DX 9.0c</td>
    </tr>
    <tr class="spec_per">
        <td class="tdr">Peripherals</td>
        <td class="tdl"></td>
    </tr>
    <tr class="spec_os">
        <td class="tdr">OS</td>
        <td class="tdl">Win7 x64, Win8 x64, Win8.1 x64, Win10 x64</td>
    </tr>
    <tr class="spec_dx">
        <td class="tdr">DX ver</td>
        <td class="tdl">11</td>
    </tr>
</table>