选择tr的输入

时间:2012-12-29 10:39:35

标签: jquery html-table

如何只选择表格行的输入?我的意思是点击每一行的所有输入。

HTML:

<table>
<tr>
    <th><input type="text" name="num" value="num"/></th>   
    <th><input type="text" name="a" value="a"/></th>
</tr>

<tr>
    <td> <input type="text" name="num" value=""/> </td>
    <td><input type="text" name="a" value=""/></td>
</tr>
</table>​

CSS:

.highlight { background-color: blue; }

JQUERY:

$(function(){
    $("tr input").click(function(){     
        $("tr input").toggleClass("highlight").siblings().removeClass("highlight"); 
    })      
})
  • 我在这里测试:http://jsfiddle.net/yg4n6/
  • 我这里有一个我正在寻找的效果的例子。这很好用,但这只是一张桌子。我试图对表格中的输入做同样的事情:http://jsfiddle.net/yg4n6/5/

1 个答案:

答案 0 :(得分:1)

首先找到this父级并搜索.highlight以删除现有的 然后将.highlight应用于this - &gt; TR - &gt;输入

http://jsfiddle.net/yg4n6/2/

$("tr input").click(function(){      
     $(this).closest('table').find('.highlight').removeClass("highlight");
     $(this).closest('tr').find('input').toggleClass("highlight");
});

你也可以这样做:

$("tr").click(function( e ){          
    if(e.target.tagName=='INPUT'){
       var $this = $(e.target);
       $this.closest('table').find('.highlight').removeClass("highlight");
       $this.closest('tr').find('input').toggleClass("highlight");
    }
});