隐藏所有id不是所选值的tr

Posted

技术标签:

【中文标题】隐藏所有id不是所选值的tr【英文标题】:Hide all tr whose id is not the value selected 【发布时间】:2021-12-11 16:09:38 【问题描述】:

我有一个剃须刀页面项目,我需要用户在过滤某些端口和变量名称之间进行选择,我的搜索栏有点工作,但我不能让另一个工作。

这是我目前所得到的:

<div class="col-12 border text-left p-3 mt-3" id="filterdiv">
    <div id="dropdown">
        @html.DropDownList("ports", (IEnumerable<SelectListItem>)ViewData["ports"], new  @id = "portdd" )
    </div>
    <div id="searchbar">
        <p>
            Name: <input type="text" name="SearchString" id="searchb"/>
        </p>
    </div>
</div>

@* FILTER BY PORTS *@
<script type="text/javascript">
    $(document).ready(function () 
        $('#portdd').change(function () 
            var value = this.value;
            $('tr:gt(0):not($(#' + value + '):attr(id))').hide();
        );
    );
</script>

@* FILTER BY NAME *@
<script type="text/javascript">
    $(document).ready(function () 
        $('#searchb').change(function () 
            var value = this.value;
            $('tr:gt(0):not(:contains(' + value + '))').hide();
        );
    );
</script>

但它没有按预期工作。任何帮助将不胜感激。

【问题讨论】:

请定义“未按预期工作”。另外,我怀疑您在某个时候需要show 一些东西(如果您每次过滤器更改时只hide 东西,您最终将什么都没有显示) 请使用最终的 HTML 和合适的演示表创建一个minimal reproducible example。 【参考方案1】:

$('tr:gt(0)[id !=' + value + ']').hide();

如果我理解正确

【讨论】:

谢谢!是的,这就是我所需要的,我对 javascript 不是很方便。再次感谢您!

以上是关于隐藏所有id不是所选值的tr的主要内容,如果未能解决你的问题,请参考以下文章

Angular 材质:在下拉列表中获取所选值的 id

从下拉列表中更新所选值的 mysql 记录

Ember JS:选择具有所选值的列表

所选值的总最大值

重力根据所选值的数量形成条件逻辑

如何使用 Eureka 框架根据所选值隐藏行/部分