Предполагая, что в каждой строке есть одна кнопка, или вы хотите скрыть первую кнопку внутри строки \
$('#errorTable').on('click', 'tr', function () {
//document.getElementById(requestID).style.visibility = 'visible';
$(this).find('button').first().hide();
// or if you set your buttons as INPUTS:
$(this).find('input[type=button]').first().hide();
}
Примечание: этот метод не требует уникального идентификатора строки, по которой был щелкнут.Если вы не хотите передать его обратно на сервер.
Редактировать
Ваш код, который генерирует кнопку, также может использовать некоторые модификации:
if (x === 5) {
var btn = $('<input>')
.attr("type","button")
.attr("id",r[0].toString())
.attr("value","Vis")
.css("background-color","#428bca")
.css("color","white")
.css("display","none") // initially hidden
.addClass("btn");
btn.appendTo($(cell));
}
Редактировать 2
Чтобы снова переключить видимость кнопки, как вы описали в комментарии, здесь нет необходимости вызывать .first()
, поскольку существует только один элемент с таким идентификатором.
$("#" +requestID+ "btn").show();