这是我的HTML DOM:

<div id="d1" class="Addable"><span class="yak-bak-nak vok-do-maria"> <p>Goola1</p>
<span>volaa</span></span></div>

<div id="d2" class="Addable"><span class="yak-bak-val vok-do-maria"> <p>Goola2</p></span></div>

<div id="d3" class="Addable"><span class="vok-do-maria yak-bak-nak"> <p>Goola3</p></div>

<div id="d4" class="Addable"><span class="vok-do-maria yak-bak-nak"> <p>Goola4</p></div>

<input type="button" class="Doop" value="Do" />


因此,我想删除所有类名称以“ yak-bak”开头的所有divs,这意味着以上所有内容。

所以我尝试这个脚本:

$('.Doop').click(function () {

    $('span[class|="yak-bak"]').parent('div').remove();
});


但仅保留d1和d2并保留d3和d4,因为yak-bak类排在第二位,我也尝试这样做:

$('.Doop').click(function () {

    $('span[class^="yak-bak"]').parent('div').remove();
});


那么您的建议是什么?问题出在哪里?

最佳答案

要定位具有多个类的元素,其中一个以属性类的开头或中间的“ yak-bak”开头,则可以使用:

JQUERY

$("div[class^='yak-bak'],div[class*=' yak-bak']").parent('div').remove();


这将选择以“ yak-bak”开头的类的元素,以及包含以“ yak-bak”表示的类的元素。

07-25 20:50