我正在尝试查找具有data-direction
属性的标记。不知何故,它总是未定义的。我要做的是获取data-direction
和data-cellId
的值。
有什么想法吗?
var row = $('<tr data-cellId="' + cell.fatherId + '" data-direction="' + cell.direction + '"/>');
var nameColumn = $('<td class="port-name-col" data-cellId="' + cell.fatherId + '">' +cell.value.name + '</td>');
var btnColumn = $('<td class="port-btn-col"><button type="button" title="Remove" class="btn btn-default btn-xs x-button-icon btn-delete-port"><span class="glyphicon glyphicon-trash"></span></button></td>');
row.append(nameColumn);
row.append(btnColumn);
事件监听
$(document).off('click', '.btn-delete-port').on('click', '.btn-delete-port', function (event) {
var elem = event.target || event.srcElement;
//find tr element that has cellID attribute
var tr = $(elem).find("tr.data-cellId");
alert($(elem).parent().parent().html())
});
答案 0 :(得分:9)
问题出在这一行:
var tr = $(elem).find("tr.data-cellId");
.data-cellId
部分根据具有该类的元素进行选择。要查找属性,请在选择器中使用[data-cellId]
:
var tr = $(elem).find("tr[data-cellId]");
要获取该属性的值,您可以使用:
tr.attr('data-cellId');