比如说我有一个表格,第一列是选择,当我点击当前行的选择之后,其他行就被隐藏。效果如下<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))?还是有其他表示方法
<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))?还是有其他表示方法
.nextAll() //获取指定元素后边的所有同级元素
$("tr").hide();
$(this).parent().show();这两行能不能合并成
$().not($(this)).parent().hide();这种形式(这个写法是错的,但我也不知道该怎么写)
$("tr").hide();
$(this).parent().show();
这两行可以合并成:
$(this).parent().siblings().hide()
siblings()表示同级元素,但不包括本身。