0

从下面的代码中,我无法input[radio]检查表格中的选定行。下面的代码使用HTML5JQuery 1.10.2

<!DOCTYPE HTML>
<html>
    <head>
        <style type="text/css">
            input[type="radio"] {
                margin: 10px;
            }
        </style>
        <script src="jquery-1.10.2.min.js" />
        <script>            
            $(function() {
                $("#table_list tr").click(function() {
                    $(this).find("td input:radio").prop("checked", true);
                });
            });
        </script>
    </head>
    <body>
        <table id="table_list">
            <thead>
                <th></th>
                <th>Name</th>
                <th>Email</th>              
            </thead>
            <tbody>
                <tr>
                    <td><input type="radio" name="record"/></th>
                    <td>Sample1</td>
                    <td>sample_1@sample.com</td>
                </tr>
                <tr>
                    <th><input type="radio" name="record"/></th>
                    <td>Sample1</td>
                    <td>sample_1@sample.com</td>                    
                </tr>
            </tbody>
        </table>        
    </body>
</html>
4

2 回答 2

3

您的第一个输入在 atd中,第二个输入在 a 中th。您必须td从输入选择器中删除:working codepen

$(function() {
    $("#table_list tr").click(function() {
        $(this).find("input:radio").prop("checked", true);
    });
});

附加的 javascript 对两者都适用。另一个选择是将选择器更改th为 atd并保持选择器的原样。

注意:正如评论中提到的那样,您还有一些标记问题。(忘记trthead

于 2013-08-12T09:51:54.733 回答
0

请看一下http://jsbin.com/atosaq/4/edit

$(document).ready(function(){
  $('#table_list tr').on("click",function(){
$(this).find('input[type=radio]').prop("checked", true);
  });
});
于 2013-08-12T10:04:49.433 回答