Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.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
Javascript 筛选/查找.eq()包含两个不同值的元素_Javascript_Jquery_Html_Css_Ajax - Fatal编程技术网

Javascript 筛选/查找.eq()包含两个不同值的元素

Javascript 筛选/查找.eq()包含两个不同值的元素,javascript,jquery,html,css,ajax,Javascript,Jquery,Html,Css,Ajax,我试图筛选一个表行,其中一列中有一个值,另一列中有一个不同的值。因此,逻辑是,如果列的一行有value1和value2,则隐藏所有其他行。如果没有值1和值2,则隐藏所有值 下面是我已经用jquery尝试过的内容 var firstDropVal = $('#first .fstselected').text(); //first DropDown Value var secondDropVal = $('#second .fstselected').text(); // second DropD

我试图筛选一个表行,其中一列中有一个值,另一列中有一个不同的值。因此,逻辑是,如果列的一行有value1和value2,则隐藏所有其他行。如果没有值1和值2,则隐藏所有值

下面是我已经用jquery尝试过的内容

var firstDropVal = $('#first .fstselected').text(); //first DropDown Value
var secondDropVal = $('#second .fstselected').text(); // second DropDown Value

// .rows is the class of my table tr
var $rowsNo = $('.rows').filter(function() {
  return $.trim($(this).find('td:visible').eq(0 && 1).text()) !== firstDropVal && secondDropVal
}).hide();
我的表格的HTML代码

while($row = mysqli_fetch_array($result)) {

$i++;


 echo "


<tr class='rows' id='rows".$i."'>

<td name='rows".$i."' id='hersteller".$i."' class='text-left'>".$row['Hersteller']."</td>
<td id='artikel".$i."' class='text-left'>".$row['Artikel']."</td>
<td id='mase".$i."' class='text-left'>".$row['Mase']."</td>
<td id='stuecke".$i."' class='text-left'>".$row['Stuecke']."</td>
<td id='herstellerkurz".$i."' class='text-left'>".$row['HerstellerKurz']."</td>
<td id='masekurz".$i."' class='text-left'>".$row['MaseKurz']."</td>
<td id='farbekurz".$i."' class='text-left'>".$row['FarbeKurz']."</td>
<td id='artikelnummer".$i."' class='text-left'>".$row['Artikelnummer']."</td>


</tr>

 "; ```
while($row=mysqli\u fetch\u数组($result)){
$i++;
回声“
“$row['Hersteller']”
“$row['Artikel']”
“$row['Mase']”
“$row['Stuecke']”
“$row['HerstellerKurz']”
“$row['MaseKurz']”
“$row['FarbeKurz']”
“$row['ArtikerNummer']”
"; ```

这些功能无法按照您尝试使用它们的方式工作

.eq(0 && 1)
firstDropVal && secondDropVal
由于运算符优先级:

您需要4个单独的测试(还有其他方法,但这基本上就是您正在做的)


这些不能像你试图使用它们那样工作

.eq(0 && 1)
firstDropVal && secondDropVal
由于运算符优先级:

您需要4个单独的测试(还有其他方法,但这基本上就是您正在做的)


为了使示例更简单,我创建了一个只有2列的表。您可以基于下拉列表
hide()
所有行和
filter()

$(“.filter”).change(函数(){
var color=$(“#过滤器颜色”).val().trim();
变量编号=$(“#过滤器编号”).val().trim();
$(“.row”).hide().filter(函数(){
返回(
颜色===“”||
color==$(this.find(“td:eq(0)”).text().trim()
) && (
数字===“”||
number==$(this.find(“td:eq(1)”).text().trim()
)
}).show();
});
表格{
字体系列:arial,无衬线;
边界塌陷:塌陷;
宽度:100%;
}
运输署{
边框:1px纯黑;
}

过滤器:
红色
绿色
蓝色
1.
2.
3.

颜色 数 红色 2. 绿色 1. 蓝色 3. 红色 3. 蓝色 2. 绿色 1.
为了使示例更简单,我创建了一个只有2列的表。您可以基于下拉列表
隐藏()所有行和
筛选()

$(“.filter”).change(函数(){
var color=$(“#过滤器颜色”).val().trim();
变量编号=$(“#过滤器编号”).val().trim();
$(“.row”).hide().filter(函数(){
返回(
颜色===“”||
color==$(this.find(“td:eq(0)”).text().trim()
) && (
数字===“”||
number==$(this.find(“td:eq(1)”).text().trim()
)
}).show();
});
表格{
字体系列:arial,无衬线;
边界塌陷:塌陷;
宽度:100%;
}
运输署{
边框:1px纯黑;
}

过滤器:
红色
绿色
蓝色
1.
2.
3.

颜色 数 红色 2. 绿色 1. 蓝色 3. 红色 3. 蓝色 2. 绿色 1.

请发布您的HTML@Eddie我现在发布了我的表格。我添加了一个答案。请检查。请发布您的答案HTML@Eddie我现在发布了我的表格。我添加了一个答案。请检查。非常感谢你的答案。我现在就尝试一下,因为不太清楚你想做什么-所以你可能需要改变逻辑(可能用
return!(…)
)包装上面的内容,或者您可能根本不想使用筛选器。看起来像是典型的表搜索/筛选器,所以应该可以。我认为它也可以是
return$.trim($(this).find($).find('td:visible').eq(0.text())!==firstDropVal&$.trim($(this).find('td:visible').eq(1.text())!==secondDropVal
但正如@freedomn-m所建议的那样,它不是很清晰,因为2天以来,我只是想弄清楚如何使用多个下拉菜单来过滤一个表。这就是我所要做的,我尝试了许多不同的方法,但仍然无法弄清楚如何简单地过滤具有多个下拉菜单的表。如果你看到图片的确,你应该知道我的意思。非常感谢你的回答。我现在就要尝试一下,因为我不太清楚你想做什么-所以你可能需要改变逻辑(也许用
return!(…)
)或者您可能根本不想使用筛选器。看起来像一个典型的表搜索/筛选器,所以应该可以。我认为它也可以是
return$.trim($(this).find('td:visible').eq(0.text())!==firstDropVal&$.trim($(this.find('td:visible').eq(1.text())!==secondDropVal
但正如@freedomn-m所建议的那样,它不是很清晰,因为2天以来,我只是想弄清楚如何使用多个下拉菜单来过滤一个表。这就是我所要做的,我尝试了许多不同的方法,但仍然无法弄清楚如何简单地过滤具有多个下拉菜单的表。如果你看到图片是的,你应该知道我的意思。谢谢你,这是我需要的!很高兴听到。如果这对你有帮助,请单击左侧的复选框接受我的答案:)谢谢你,这是我需要的!很高兴听到。如果这对你有帮助,请单击左侧的复选框接受我的答案:)