Глядя на ваш обновленный вопрос, это выглядит lot как вариант использования для делегирования событий, если вы помещаете один и тот же обработчик (marld
) для каждого td
в таблице. (Или на каждом td.td-info
в таблице и c.)
В этом случае удалите onclick="marld()"
из td
и используйте единственный обработчик на tbody
, например это:
tbody.on("click", "td", marld);
или, если все они имеют td-info
, точнее:
tbody.on("click", "td.td-info", marld);
jQuery будет отвечать на щелчки, которые всплывают на tbody
из его содержимого проверив, прошел ли клик через td
/ td.td-info
, и, если да, вызвав marld
с this
, установленным на td
, через который прошел клик.
Но если вы не хотите использовать делегирование событий, readon.
Вместо использования обработчика событий onxyz
-attribute в старом стиле создайте td
и используйте современную обработку событий для подключения функции marld
; также нет причин для $('').append(...)
:
const td = $(`<td class="td-info table__content" data-heading="Assunto" data-alerta="${ Ida }, ${ Paraa }" style="font-weight: ${ Stat != '0' ? 'bold' : 'normal' }; font-size: 90%">`);
td.append(data[i][2]);
td.on("click", marld);
tbody.append(td);
Тогда в marld
this
будет ссылаться на этот td
, поэтому используйте его в своем обработчике успеха. Чтобы убедиться, что this
не установлен вызывающим абонентом, используйте функцию стрелки, а не традиционную функцию:
function marld(){
var ite_id = []; //arraypara armazenar os id's a serem deletados
$(".colorir").each(function(){ //percorre todos os tr que possui a classe colorir
ite_id.push($(this).find(".td-info").attr("data-alerta")); //adiciona o id da linha ao array
})
$.ajax({
url: './marcaler',
type: 'POST',
cache: false,
data: {ite_id:ite_id},
error: function(){
},
success: (result) => // *** Arrow function
{
if(result != ''){
$(this).css("font-weight", "normal") // *** Use `this`
}
}
});
}
В ответ на ваш обновленный вопрос вы бы подключили marld
к этим множественным td
s, просто позвонив им .on
после добавления всего, например:
tbody.append(
$('<tr class="table__row">')
.append($(`<td class="table__content" data-heading="De" style="font-weight: ${ Stat != '0' ? 'bold' : 'normal' }; font-size: 90%">`).append(data[i][1]).on("click", mar1ld))
// −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−^^^^^^^^^^^^^^^^^^^^
.append($(`<td class="table__content" data-heading="Tipo" style="font-weight: ${ Stat != '0' ? 'bold' : 'normal' }; font-size: 90%">`).append(data[i][8]).on("click", mar1ld))
.append($(`<td class="td-info table__content" data-heading="Assunto" data-alerta="${ Ida }, ${ Paraa }" style="font-weight: ${ Stat != '0' ? 'bold' : 'normal' }; font-size: 90%">`).append(data[i][2]).on("click", mar1ld))
.append($(`<td class="table__content" data-heading="Conteúdo" style="font-weight: ${ Stat != '0' ? 'bold' : 'normal' }; font-size: 90%">`).append(data[i][3]).on("click", mar1ld))
.append($(`<td class="table__content" data-heading="Estado" style="font-weight: ${ Stat != '0' ? 'bold' : 'normal' }; font-size: 90%">`).append(data[i][4]).on("click", mar1ld))
.append($(`<td class="table__content" data-heading="Recebido" style="font-weight: ${ Stat != '0' ? 'bold' : 'normal' }; font-size: 90%">`).append(data[i][5]).on("click", mar1ld))
)