我有一个表,有无数行,当我点击按钮时,我需要获得点击该按钮的行ID。我怎样才能做到这一点? 我的尝试代码:
function teste(){
$('table tr').each(function(){
var name = $(this).parent().find('.idServico').html();
alert(name);
});
}
我的js生成的表格:
tabelaResultado.innerHTML += `
<tr>
<td class="idServico">${idServico}</td>
<td>${dataEntradaServico}</td>
<td>${dataSaidaServico}</td>
<td>${cpfPessoa}</td>
<td>${idStatus}</td>
<td>${descricaoServico}</td>
<td class="actions tirarCor">
<a class="btn btn-success btn-xs" href="/updateService">Visualizar</a>
<a class="btn btn-warning btn-xs" href="/updateService">Editar</a>
<button id="botaoExcluir" class="btn btn-danger btn-xs" onclick="teste()"data-toggle="modal" data-target="#delete-modal">Excluir</button>
</td>
</tr>
答案 0 :(得分:0)
从按钮中删除内联事件处理程序,并使用jQuery设置事件侦听器。然后,您可以使用$(this)
来引用被点击的按钮,.closest()
向上遍历到父<tr>
,然后.find()
来获取<td>
班idServico
:
$('button.btn.btn-danger.btn-xs').click(function(){
var name = $(this).closest('tr').find('td.idServico').html();
alert(name);
})
如果动态添加行,则应使用委托事件处理程序:
$(document).on('click' ,'button.btn.btn-danger.btn-xs' ,function(){
var name = $(this).closest('tr').find('td.idServico').html();
alert(name);
})