首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

jquery怎么选中非当前元素

2013-03-06 
jquery如何选中非当前元素?比如说我有一个表格,第一列是选择,当我点击当前行的选择之后,其他行就被隐藏。效

jquery如何选中非当前元素?
比如说我有一个表格,第一列是选择,当我点击当前行的选择之后,其他行就被隐藏。效果如下


<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(function(){
$("tr td").click(function(){
if($(this).text()=="选择"){
$("tr").hide();
$(this).parent().show();
}
});
})
 </script> 
<table border="1" cellspacing="0" cellpadding="0" width="600">
 <tr>
<td/>选择</td>
<td>2</td>
<td>2</td>
<td>1</td>
<td>2</td>
<td>2</td>
<td>1</td>
 </tr>
 <tr>
<td>选择</td>
<td>2</td>
<td>1</td>
<td/>1</td>
<td>1</td>
<td>2</td>
<td>0</td>
 </tr>
 <tr>
<td/>选择</td>
<td>1</td>
<td>2</td>
<td/>0</td>
<td>1</td>
<td>2</td>
<td>0</td>
 </tr>
</table>

我想问的是如何表示非当前元素,是!$(this),not($(this))?还是有其他表示方法
[解决办法]
这种问题应当先去查API,

.prevAll() //获取指定元素的前边所有的同级元素。
.nextAll() //获取指定元素后边的所有同级元素

[解决办法]
引用
 $("tr").hide();           
 $(this).parent().show();这两行能不能合并成
$().not($(this)).parent().hide();这种形式(这个写法是错的,但我也不知道该怎么写)


$("tr").hide();
$(this).parent().show();
这两行可以合并成:
$(this).parent().siblings().hide()


siblings()表示同级元素,但不包括本身。

热点排行