如何使用 jquery 查找所有背景颜色为黄色的行?
How to find all rows with background-color yellow using jquery?
我想查找具有属性 background-color=rgb(255, 255, 0)
的所有行。
按下按钮 'Search' 应该可以做到这一点。我不明白为什么这不起作用。没有找到。搜索代码:
$("#btnSearch").click(function(){
var rows = $("#tbl1 tr[style='background-color:rgb(255, 255, 0)']");
})
整个例子是here
试试这个;
$('#tbl1 tr').filter(function() {
return $(this).css('background-color') == 'rgb(255, 255, 0)';
})
试试这个..
$("#btnSearch").click(function(){
$("#tbl1 tr").each(function () {
if($(this).css("background-color") == "rgb(255, 255, 0)")
{
alert('I am Yellow ;)');
}
else{
alert('I am White ;)');
}
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='tbl1' class="table table-hover table-bordered">
<thead>
<tr>
<th>#</th>
<th>Ime izdelka</th>
<th>Opisni REF</th>
<th>LOT/serijska/EDI</th>
<th>Stanje (REF)</th>
<th>Stanje (LOT)</th>
<th>Privzeta skupina</th>
</tr>
</thead>
<tfoot>
</tfoot>
<tbody>
<tr style="background-color: rgb(255, 255, 0);">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8036572</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">3</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr style="background-color: rgb(255, 255, 0);">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">2</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8327937</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr>
<td data-id="iROW_NUMBER">3</td>
<td data-id="cPROD_NME">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD">401.364</td>
<td data-id="cPRSE_DCD">9572333</td>
<td data-id="iPROD_QUA_QUA">6</td>
<td data-id="cPRSS_QUA_QUA">2</td>
<td data-id="cPRGR_NME">Stopalo - SYNTHES</td>
</tr>
</tbody>
</table>
<br/>
<br/>
<button id="btnSearch">Search</button>
简洁的方法是使用 class 而不是内联样式。
$("#btnSearch").click(function() {
console.log($('#tbl1 tr.yellow'))
})
.yellow {
background-color: rgb(255, 255, 0);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='tbl1' class="table table-hover table-bordered">
<thead>
<tr>
<th>#</th>
<th>Ime izdelka</th>
<th>Opisni REF</th>
<th>LOT/serijska/EDI</th>
<th>Stanje (REF)</th>
<th>Stanje (LOT)</th>
<th>Privzeta skupina</th>
</tr>
</thead>
<tfoot>
</tfoot>
<tbody>
<tr class="yellow">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8036572</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">3</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr class="yellow">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">2</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8327937</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr>
<td data-id="iROW_NUMBER">3</td>
<td data-id="cPROD_NME">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD">401.364</td>
<td data-id="cPRSE_DCD">9572333</td>
<td data-id="iPROD_QUA_QUA">6</td>
<td data-id="cPRSS_QUA_QUA">2</td>
<td data-id="cPRGR_NME">Stopalo - SYNTHES</td>
</tr>
</tbody>
</table>
<br/>
<br/>
<button id="btnSearch">Search</button>
您在jQuery和HTML上使用的字符串应该相同。
在您的 jQuery 中您忘记了 分号 ;
和 space [= :
.
之后的23=]
试试这个字符串。
#tbl1 tr[style='background-color: rgb(255, 255, 0);']
无论如何,我不建议你这样使用内联样式。
使用 jQuery .filter()
过滤 selected tr
和 select 只有 tr
有目标背景色。在函数回调中使用 this.style.backgroundColor
获取 tr 的 background-color
并检查是否等于 rgb(255, 255, 0)
。
$("#btnSearch").click(function(){
var trs = $("#tbl1 tr").filter(function(){
return this.style.backgroundColor == "rgb(255, 255, 0)";
});
});
请注意,在点击后的底部示例中,目标 tr
的颜色更改为 red
。
$("#btnSearch").click(function(){
$("#tbl1 tr").filter(function(){
return this.style.backgroundColor == "rgb(255, 255, 0)";
}).css("color", "red");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='tbl1' class="table table-hover table-bordered">
<tr style="background-color: rgb(255, 255, 0);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr style="background-color: rgb(255, 255, 255);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr style="background-color: rgb(0, 0, 0);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr style="background-color: rgb(255, 255, 0);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr>
<td>1</td><td>2</td><td>3</td>
</tr>
</table>
<button id="btnSearch">Search</button>
检查 demo
中完整 html 代码的结果
我想查找具有属性 background-color=rgb(255, 255, 0)
的所有行。
按下按钮 'Search' 应该可以做到这一点。我不明白为什么这不起作用。没有找到。搜索代码:
$("#btnSearch").click(function(){
var rows = $("#tbl1 tr[style='background-color:rgb(255, 255, 0)']");
})
整个例子是here
试试这个;
$('#tbl1 tr').filter(function() {
return $(this).css('background-color') == 'rgb(255, 255, 0)';
})
试试这个..
$("#btnSearch").click(function(){
$("#tbl1 tr").each(function () {
if($(this).css("background-color") == "rgb(255, 255, 0)")
{
alert('I am Yellow ;)');
}
else{
alert('I am White ;)');
}
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='tbl1' class="table table-hover table-bordered">
<thead>
<tr>
<th>#</th>
<th>Ime izdelka</th>
<th>Opisni REF</th>
<th>LOT/serijska/EDI</th>
<th>Stanje (REF)</th>
<th>Stanje (LOT)</th>
<th>Privzeta skupina</th>
</tr>
</thead>
<tfoot>
</tfoot>
<tbody>
<tr style="background-color: rgb(255, 255, 0);">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8036572</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">3</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr style="background-color: rgb(255, 255, 0);">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">2</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8327937</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr>
<td data-id="iROW_NUMBER">3</td>
<td data-id="cPROD_NME">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD">401.364</td>
<td data-id="cPRSE_DCD">9572333</td>
<td data-id="iPROD_QUA_QUA">6</td>
<td data-id="cPRSS_QUA_QUA">2</td>
<td data-id="cPRGR_NME">Stopalo - SYNTHES</td>
</tr>
</tbody>
</table>
<br/>
<br/>
<button id="btnSearch">Search</button>
简洁的方法是使用 class 而不是内联样式。
$("#btnSearch").click(function() {
console.log($('#tbl1 tr.yellow'))
})
.yellow {
background-color: rgb(255, 255, 0);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='tbl1' class="table table-hover table-bordered">
<thead>
<tr>
<th>#</th>
<th>Ime izdelka</th>
<th>Opisni REF</th>
<th>LOT/serijska/EDI</th>
<th>Stanje (REF)</th>
<th>Stanje (LOT)</th>
<th>Privzeta skupina</th>
</tr>
</thead>
<tfoot>
</tfoot>
<tbody>
<tr class="yellow">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8036572</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">3</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr class="yellow">
<td data-id="iROW_NUMBER" style="background-color: rgb(255, 255, 0);">2</td>
<td data-id="cPROD_NME" style="background-color: rgb(255, 255, 0);">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD" style="background-color: rgb(255, 255, 0);">401.364</td>
<td data-id="cPRSE_DCD" style="background-color: rgb(255, 255, 0);">8327937</td>
<td data-id="iPROD_QUA_QUA" style="background-color: rgb(255, 255, 0);">6</td>
<td data-id="cPRSS_QUA_QUA" style="background-color: rgb(255, 255, 0);">1</td>
<td data-id="cPRGR_NME" style="background-color: rgb(255, 255, 0);">Stopalo - SYNTHES</td>
</tr>
<tr>
<td data-id="iROW_NUMBER">3</td>
<td data-id="cPROD_NME">Kortikalni 2.0/14mm (zlati)</td>
<td data-id="cPROD_DCD">401.364</td>
<td data-id="cPRSE_DCD">9572333</td>
<td data-id="iPROD_QUA_QUA">6</td>
<td data-id="cPRSS_QUA_QUA">2</td>
<td data-id="cPRGR_NME">Stopalo - SYNTHES</td>
</tr>
</tbody>
</table>
<br/>
<br/>
<button id="btnSearch">Search</button>
您在jQuery和HTML上使用的字符串应该相同。
在您的 jQuery 中您忘记了 分号 ;
和 space [= :
.
试试这个字符串。
#tbl1 tr[style='background-color: rgb(255, 255, 0);']
无论如何,我不建议你这样使用内联样式。
使用 jQuery .filter()
过滤 selected tr
和 select 只有 tr
有目标背景色。在函数回调中使用 this.style.backgroundColor
获取 tr 的 background-color
并检查是否等于 rgb(255, 255, 0)
。
$("#btnSearch").click(function(){
var trs = $("#tbl1 tr").filter(function(){
return this.style.backgroundColor == "rgb(255, 255, 0)";
});
});
请注意,在点击后的底部示例中,目标 tr
的颜色更改为 red
。
$("#btnSearch").click(function(){
$("#tbl1 tr").filter(function(){
return this.style.backgroundColor == "rgb(255, 255, 0)";
}).css("color", "red");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='tbl1' class="table table-hover table-bordered">
<tr style="background-color: rgb(255, 255, 0);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr style="background-color: rgb(255, 255, 255);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr style="background-color: rgb(0, 0, 0);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr style="background-color: rgb(255, 255, 0);">
<td>1</td><td>2</td><td>3</td>
</tr>
<tr>
<td>1</td><td>2</td><td>3</td>
</tr>
</table>
<button id="btnSearch">Search</button>
检查 demo
中完整 html 代码的结果