Вы должны сделать это следующим образом
$.ajax({
type: 'GET',
url: 'api/v1/service/tax',
success: (result)=>{
let output="";
let serialNumber = 1;
let badge = "";
for (var i in result){
output+= `<tr class="custom-table-rows">
<th scope="row">${serialNumber++}</th>
<td>${result[i].entityName}</td>
<td>${result[i].serviceName}</td>
<td>${result[i].dateRequested}</td>`
if(result[i].status === 'PENDING'){
badge = 'badge-danger' ;
} else if(result[i].status === 'IN PROCESS'){
badge = 'badge-warning' ;
}else{
badge = 'badge-success' ;
}
output+= `<td><span class="badge badge-pill ${badge}">${result[i].status}</span></td></tr>`
}
$("#adminTable").html(output);
}
});
Объяснение: Что вы делаете неправильно, вы используете селекторы jQuery для изменения класса значка, который не будет работать, потому что генерируемый HTML все еще работаетв переменной output
и не был добавлен в DOM.jQuery Selectos используются для выбора и управления элементами, присутствующими в DOM