Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当在tr上迭代时,Jquery不允许我选择td的值_Javascript_Jquery_Html Table - Fatal编程技术网

Javascript 当在tr上迭代时,Jquery不允许我选择td的值

Javascript 当在tr上迭代时,Jquery不允许我选择td的值,javascript,jquery,html-table,Javascript,Jquery,Html Table,当行包含复选框时,我想选择td的值。我可以选择包含复选框的行,但是我不能遍历该行来选择键 这是表结构 <table class="test"><thead><tr> <th class="table-header-name">select</th> <th class="placeholder" style="min-width:100px"></th> <th class="table-header-na

当行包含复选框时,我想选择td的值。我可以选择包含复选框的行,但是我不能遍历该行来选择键

这是表结构

<table class="test"><thead><tr>
<th class="table-header-name">select</th>
<th class="placeholder" style="min-width:100px"></th>
<th class="table-header-name">Key</th>
<th class="table-header-name">hash</th>
<th class="table-header-name">type</th>
</tr>
</thead>

<tbody id="table-body">
<tr class="table-row">
<td><input class="change-select" type="checkbox"></td>
<td class="placeholder"></td>
<td class="key">TICKET:44433</td>
<td class="hash">444nhh</td>
<td class="type">COOL</td>
</tr>
</tbody></table>
我尝试了很多方法来获得td的价值,比如:

this.find("td .key").text();
this.find("td").eq([number])
在这两种情况下,它都不会返回任何结果

当我使用“.aui tr:has:checkbox:checked”时,我发现我正在迭代HTMLTableCellElements,但在这个相关主题中,它应该可以工作:

将生成以下输出:

"find td: [object Object]"
就这样

所以我想我选择行的方式一定有问题。我希望你能给我一个提示

$(document).ready(function(){
    $('tbody tr').each(function(){
        if($(this).find('.change-select').attr('checked') == 'checked'){
        alert($(this).find('.key').text());
        }
    });
});
选中复选框后,即可使用“查找”:

$('.table-row:has(:checkbox:checked)').each(function (idx, comp){
        console.log($(comp).find('.key')[0].innerText);
        //console.log(comp);
    });
您正在从日志语句中获取[object object],因为您在其中使用字符串连接–不要这样做,始终以“本机”形式记录对象,而不将它们与其他内容连接。这样,您将得到一个实际的对象,您可以检查记录到控制台的内容,而不仅仅是它的字符串表示形式。
"find td: [object Object]"
$(document).ready(function(){
    $('tbody tr').each(function(){
        if($(this).find('.change-select').attr('checked') == 'checked'){
        alert($(this).find('.key').text());
        }
    });
});
$('.table-row:has(:checkbox:checked)').each(function (idx, comp){
        console.log($(comp).find('.key')[0].innerText);
        //console.log(comp);
    });