Javascript jQuery。选择有类但没有样式的所有元素=";显示:无&引用;属性
我有下面的类,它选择td.lineitemtotal单元格中的内容,并在getTotal函数中使用它来获得单元格的总数。但是,我不希望函数使用带有style=“display:none;”属性的tr.line\u item\u行中的行Javascript jQuery。选择有类但没有样式的所有元素=";显示:无&引用;属性,javascript,jquery,Javascript,Jquery,我有下面的类,它选择td.lineitemtotal单元格中的内容,并在getTotal函数中使用它来获得单元格的总数。但是,我不希望函数使用带有style=“display:none;”属性的tr.line\u item\u行中的行 $(document).ready(function() { var line = $('.item'); // so the line totals are calculated on page load getLineItemTotals(line
$(document).ready(function() {
var line = $('.item');
// so the line totals are calculated on page load
getLineItemTotals(line);
var line_totals = $('.lineitemtotal');
getTotal(line_totals); // So the total is calculated on page load.
});
// get invoce grand total
function getTotal(lines) {
var total = 0;
$.each(lines, function(){
total += parseFloat($(this).html());
});
$('#total-price').html('$' + total.toFixed(2));
}
你想要这个吗
$('.lineitemtotal:visible');
$('.lineitemtotal:visible');
此集合包含在选择器上具有class
lineitemtotal
的非隐藏元素,包括选择器:
如果您确定该属性始终为
style=“display:none;”
,则可以使用属性选择器
与此相反:
var line = $('.item');
试试这个:
var line = $('.item[style!="display:none;"]');
使用
[attribute=“value”]
查找具有值值的属性的元素,添加
之前,=
查找不匹配的内容。+1
我正要回答:)如果元素的属性中有其他样式,该怎么办?为什么不使用:visible
选择器?@第一句话中未定义的要点。我以为那是唯一的风格。至于不使用:visible
,我这样做是因为visible也考虑了可见性:hidden
,而OP并没有要求这样做。既然样式中包含多个属性,它是否应该像[style*=“display:none”]?有趣的解决方案(:visible
不起作用,因为我首先淡出了整个div,然后在淡入之前运行了此检查),但我必须调整一件事。jQuery(至少是更高版本;在编写此答案时,我无法与最新版本对话)在冒号和值之间设置了一个空格,因此您必须执行:not([style])*=“display:none”]
。是的!我花了5秒的时间来qoogle、search、find:)写这篇评论绝对值得。
var line = $('.item[style!="display:none;"]');