Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.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
隐藏一个;dl";根据“a”中的标签内容;dt";在jQuery中_Jquery_Html - Fatal编程技术网

隐藏一个;dl";根据“a”中的标签内容;dt";在jQuery中

隐藏一个;dl";根据“a”中的标签内容;dt";在jQuery中,jquery,html,Jquery,Html,我有以下html代码: <dl class="last"> <dt><label class="required">DL TO HIDE</label></dt> <dd class="last"> <div class="input-box"> <select name="options[40]" id="select_40" class=" req

我有以下html代码:

<dl class="last">
    <dt><label class="required">DL TO HIDE</label></dt>
    <dd class="last">
        <div class="input-box">
            <select name="options[40]" id="select_40" class=" required-entry product-custom-option" title="" onchange="opConfig.reloadPrice()">
                <option value="">-- Faites un choix --</option>
                <option value="231" price="0">2005</option>
                <option value="232" price="0">2006</option>
                <option value="233" price="0">2007</option>
                <option value="234" price="0">2008</option>
                <option value="235" price="0">2009</option>
                <option value="236" price="0">2010</option>
                <option value="237" price="0">2011</option>
                <option value="238" price="0">2012</option>
                <option value="239" price="0">2013</option>
                <option value="240" price="0">2014</option>
            </select>
        </div>
    </dd>
</dl>

隐藏
--合唱团--
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
如果在当前“dl”的“dt”中,标签等于“dl to HIDE”,我想隐藏所有相关的dl(上面引用的dt和dd)。
你知道怎么做吗?

这里有一种方法-

var findText = "DL TO HIDE";
if(1 == $('dl dt label:contains(' + findText + ')').length ) {
    $('dl dt label:contains(' + findText + ')').closest('dl').hide();
}
这不管用吗

$('dl dt label:contains(DL TO HIDE)').closest('dl').hide();
然而,其他人所说的是正确的。根据文本内容过滤元素不是一个好主意。希望您在之前已经用某种元数据标记了这些元素,以指示它们应该被隐藏。或者,您可以跟踪要隐藏在javascript变量中的元素。然后你可以做一些类似的事情:

dlsToHide.hide();
或者,如果仅跟踪标签,请执行以下操作:

labels.closest('dl').hide();

您是否有能力以其他方式对此进行标记?根据元素的文本内容选择元素的速度很慢。d1是什么?dd呢?从未见过before@M.chaudhry看看MDN:和.@M.chaudhry-这是
描述/定义列表。@ComFreek好的,谢谢你