Click on a button and get the values of a table’s row

Asked

Viewed 206 times

0

I’m doing a project in nodejs / javascript and I’m trying to get the values that are in a table row. By clicking on the button that this line will fetch me these values and will send them to another page .

Basically I want to obtain the values of the table cell through a button

this is the table code ( not in html this be done in the controller that is of the MVC structure)

function catalogo() {
//debugging para ver se foi pedido com sucesso
console.log(' pedido get  entrou success');
//criação de uma tabela para demonstração dos resultados recebidos
var txt = "";
txt += "<div class='table-responsive'>";
txt += "<table id='tblLivrosCatalogo' class='table table-sm'>";
txt += "<thead color:white '>";
txt += "<tr> <th>#ID</th> <th>Titulo</th> <th>Autor</th> <th>Género</th><th>Ano De Lançamento</th><th>Proprietário</th><th>Disponibilidade</th></tr></thead><tbody>";
//percorrer a variável data e por cada row cria a linha da tabela com os dados presentes
for (var i = 0; i < lista.length; i++) {
    if (lista[i].disp_req == "Disponivel") {
        // console.log(i)
        //aqui os id's são os do mysql
        txt += "<tr><td id ='id_tr'>" + lista[i].id_livro + "</td><td>" + lista[i].titulo +
            "</td><td>" + lista[i].autor + "</td><td>" + lista[i].genero + "</td><td>" + lista[i].ano_lanc + "</td><td>" + lista[i].user_prop + 
            "</td><td>" + lista[i].disp_req + "</td><td>" + "<button id='btnn'>Requisitar</button>" + "</tr>"
    }
    else {
        //aqui os id's são os do mysql
        txt += "<tr><td  id ='id_tr'>" + lista[i].id_livro + "</td><td>" + lista[i].titulo +
            "</td><td>" + lista[i].autor + "</td><td>" + lista[i].genero + "</td><td>" + lista[i].ano_lanc + "</td><td>" + lista[i].user_prop + "</td><td>" + lista[i].disp_req + "</td></tr>"
    }
}
txt += "</tbody></table></div>";
//envia a tabela construida para a view e mostra o resultado (txt) no object com ID result
$("#tablecatalogo").html(txt);
}

this table is generated after I make a book record that will stop the sql database and then read in this table

inserir a descrição da imagem aqui

1 answer

1

Basically I want to obtain the values of the table cell through a button

You can create a onclick button that has a JSON with the line values. An example would be:

+ "<button onclick='requesitar(" + JSON.stringify(lista[i]) + ")'>Requisitar</button>" +

and then use this data in the function:

function requesitar(json){
    const obj = JSON.parse(json);
    alert(obj.autor);
}

NOTE: You have many repeated Ids, that’s invalid HTML. You can only have 1 unique ID per page.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.