如何在jquery中定位最后一个tr?
我想在表中的最后一个tr上应用一些css属性,所以我有use:last选择器,但它在下面的ie9版本中不起作用,所以我尝试使用“eq()”方法,但没有得到结果。可以在jquery中使用eq()方法以最后一个tr为目标如何在jquery中定位最后一个tr?,jquery,html,Jquery,Html,我想在表中的最后一个tr上应用一些css属性,所以我有use:last选择器,但它在下面的ie9版本中不起作用,所以我尝试使用“eq()”方法,但没有得到结果。可以在jquery中使用eq()方法以最后一个tr为目标 <script type="text/javascript" src="../jquery/jquery-1.7.min.js"></script> <script type="text/javascript"> $(function() {
<script type="text/javascript" src="../jquery/jquery-1.7.min.js"></script>
<script type="text/javascript">
$(function() {
var trNo= $('#compareTable tr');
var NoN= trNo.eq(-1);
NoN.css('border','none')
});
</script>
</head>
<body>
<div class="main">
<div class="compatible">
<h4 class="compatileHeading">8 Matching Compatible Product</h4>
<div class="listingCompatibleProdcut">
<table width="100%" border="0" cellspacing="0" cellpadding="0" id="compareTable">
<tr>
<td width="105" align="center">
<div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div>
</td>
<td width="105" align="center"><div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div></td>
<td width="105" align="center"><div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div></td>
<td width="105" align="center"><div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div></td>
</tr>
<tr>
<td width="105" align="center">
<div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div>
</td>
<td width="105" align="center"><div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div></td>
<td width="105" align="center"><div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div></td>
<td width="105" align="center"><div class="compareBox">
<ul id="compareunorderedList">
<li class="compareImg"><img src="images/img.jpg" width="50" height="93" /></li>
<li class="compareTitle">Galaxy S LCD 4GB</li>
<li class="compareCode">GT-19003</li>
</ul>
</div></td>
</tr>
</table>
</div>
</div>
</div>
$(函数(){
var trNo=$(“#可比较tr”);
var非=trNo.eq(-1);
非.css('border','none')
});
8匹配兼容产品
Galaxy S LCD 4GB
GT-19003
Galaxy S LCD 4GB
GT-19003
Galaxy S LCD 4GB
GT-19003
Galaxy S LCD 4GB
GT-19003
Galaxy S LCD 4GB
GT-19003
Galaxy S LCD 4GB
GT-19003
Galaxy S LCD 4GB
GT-19003
Galaxy S LCD 4GB
GT-19003
或
演示:
我能想到的最简单的方法是:
$("#compareTable tr:last-child")
语法为jQuery实现了,因此应该可以:
$('#compareTable tr:last')
// or, for better performance
$('#compareTable tr').filter(':last')
话虽如此,.eq(-1)
也应该起作用
编辑:我刚刚用你的html尝试了
:last
和.eq(-1)
,两者在Chrome和IE中都运行良好。即使我使用了eq()方法,但在IE中也不起作用。tr
没有边框。只能围绕整个表格或单个单元格绘制边框。这不是一个IEproblem@amit现在我又读了一遍这个问题,我对你想做的事有怀疑。没有边框可以开始(您明确声明border=“0”
),因此border:none
即使有效也不会有任何效果。@amit@MrLister使用边框折叠:折叠表格上的code>可以在tr
周围绘制边框,尽管这样在我的IE8中也可以使用。@MrLister-所有的浏览器都可以使用。这就是问题所在,jQuery不依赖于等效CSS选择器的本机支持来工作。
$("#compareTable tr:last-child")
$('#compareTable tr:last')
// or, for better performance
$('#compareTable tr').filter(':last')