获取每个父项 <td> 的类,并使用 Jquery 将其映射到 <li> 项

Get Class of Each Parent <td> and map it to an <li> item using Jquery

本文关键字:Jquery li 映射 的类 td 获取      更新时间:2023-09-26

我有一个问题,我自己已经解决了一半,需要一些专家来帮助我完成它。

我有一个<table>,我想用第一列中的名称填充一个.dropdown,并且它们的父类名(数字)应用于我添加到下拉列表中的<li>中的input复选框字段。

演示 - http://jsfiddle.net/zqMnk/2/

  1. 我有名字在工作
  2. 我不知道如何添加类名(出于问题目的,我在演示中将其命名为 addDynamicClassHere

笔记

  1. 有时类名与其他类混合在一起,所以我做了一个replace来去除不需要的。请参阅演示 JS 中的var addDynamicClassHere =。这是我获取类名的尝试。
  2. 我已经在input中添加了一个类addDynamicClassHere,这是我想应用相应类的地方。

如果我只查看下拉列表中输入字段的 HTML,我希望结果是

<input class="520e248" type="checkbox" checked="">
<input class="520e24ee8" type="checkbox" checked="">
<input class="e248" type="checkbox" checked="">
<input class="434343" type="checkbox" checked="">
<input class="90i0i" type="checkbox" checked="">

请注意,这只是我向您展示用于问题目的的输入所需结果,正如您在演示中看到的那样,它们周围还有其他 html。

提前感谢...很难正确表达的问题,所以如果有任何问题,请告诉我,我可以编辑...

像这样获取类

var addDynamicClassHere = $('.pickme').closest('tr').map(function () {
    return this.className.replace(/(first|hidden)/g,"");
});

我猜你想显示/隐藏取决于它是否被选中,那么你可以这样做

   $('.resourceFilter').on('change', 'input', function () {
        if (this.checked) {
            console.log("show");
            $('tr.' + this.className).show();
        } else {
            $('tr.' + this.className).hide();
        }
    });

演示