Javascript jQuery-contains |为什么这一个不起作用,而另一个同样起作用?
html: 看看这两行: $'table.table1 tbody tr td:包含“+类别+”.css字体大小,50px 及 $'table.table1 tbody tr td:包含“+类别+”。每个函数{ 工作完美。包含分类变量中的单词的整个td现在是50px字体大小 但第二行几乎相同,不起作用,不能删除最近的tr 但它们是相同的,它们选择相同的元素。看,它们是相同的: $'table.table1 tbody tr td:包含“+类别+” 那为什么呢 第二种方法在我向其添加a时适用,因此它看起来像: $'table.table1 t正文tr td a:包含“+类别+” 但为什么不早一点呢Javascript jQuery-contains |为什么这一个不起作用,而另一个同样起作用?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,html: 看看这两行: $'table.table1 tbody tr td:包含“+类别+”.css字体大小,50px 及 $'table.table1 tbody tr td:包含“+类别+”。每个函数{ 工作完美。包含分类变量中的单词的整个td现在是50px字体大小 但第二行几乎相同,不起作用,不能删除最近的tr 但它们是相同的,它们选择相同的元素。看,它们是相同的: $'table.table1 tbody tr td:包含“+类别+” 那为什么呢 第二种方法在我向其添加a时适用,因此
第一个在没有a的情况下可以很好地工作,那么为什么第二个不行呢?应该和第一个字体更大的一样好我在这里收集了我答案的要点
$('input#filter').on('click', function(form) {
form.preventDefault();
var category = $('select[name="select-category"]').val();
alert(category);
$( 'table.table1 tbody tr td:contains("' + category + '")' ).css( "font-size", "50px" );
$( 'table.table1 tbody tr td:contains("' + category + '")' ).each(function () {
// $( 'table.table1 tbody tr td:contains("' + category + '")' ).css( "font-size", "50px" );
// $( 'table.table1 tbody tr td:contains("' + category + '")' ).each(function () {
if ($(this).text() == category)
{
$(this).closest('tr').remove();
}
});
});
因为将使用所有表格单元格,所以效率不高。最好只检查相关单元格,如第3列:
$( 'table.table1 tbody tr td:contains("' + category + '")' )
当前正在处理缩短的代码:我在html中找不到inputfilter或select with name select类别,请包含所有相关代码。@CarstenLøvboAndersen Eddite在代码中显示name=filter。它必须是id=filter。我稍微修改了您的代码。单击按钮并查看控制台输出。如果$this.text==类别永远不是真的。它是关于$'table.table1 tbody tr td:包含'+category+''为什么第二行中必须加上a,所以它是$'table.table1 tbody tr td a:包含'+category+''
$( 'table.table1 tbody tr td:contains("' + category + '")' )
$( 'table.table1 tbody tr td:nth-of-type(3):contains("' + category + '")' ).each(function () {