gpt4 book ai didi

javascript - jquery prev() 返回 undef

转载 作者:行者123 更新时间:2023-11-28 19:08:46 25 4
gpt4 key购买 nike

通过 JSON 接收数据并在表上添加内容后,使用事件委托(delegate)来捕获该内容的链接,但是当您单击动态创建的链接时想要访问 prev() 包含的 tr 元素数据 ID。但这是我回来的undef。有人能帮我吗? prev() 正在被 editarComercial() 调用

Javascript:

$(document).ready(function(){

function editarComercial(trthis) {
alert($(trthis).prev().prev().data('id'));
}

function listaComercial(){

url = BASE_URL + 'comercial/ajaxrequest/listagem';

$.getJSON(url,function(data){

var trs = [];
$.each(data,function (key){

tr = "<tr data-id=\""+data[key].id+"\">";
tr += "<td>"+data[key].nome+"</td>";
tr += "<td><a href=\"javascript:void(0);\" class=\"edit-comercial\">Editar</a>";
tr += "<a href=\"javascript:void(0);\" class=\"del-comercial\">Excluir</a></td>";
tr += "</tr>";

trs.push(tr);
});
$("<tbody/>",{
html: trs.join("")
}).appendTo("#listagemComercial");
});

}

$(document).on('click','a.edit-comercial',function(){
editarComercial(this);
});

listaComercial();
});

HTML:

    <div id="content">
<table id="listagemComercial">
<thead>
<tr>
<th>Nome</th>
<th>Ações</th>
</tr>
</thead>
</table>
</div>

最佳答案

.edit-comercial 没有前一个元素,它是 TD 中的第一个元素。

您可能需要 closest() 来遍历到该行

function editarComercial(trthis) {
alert( $(trthis).closest('tr').data('id') );
}

关于javascript - jquery prev() 返回 undef,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31143999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com