Tenho uma função de javascript que cria uma linha na tabela,
function addRow(id){
var tbody = document.getElementById(id)
var row = document.createElement("TR")
var td1 = document.createElement("TD")
td1.setAttribute("width", "17%");
td1.setAttribute("class", "td_lista");
//Cria o Select
var selectBox = document.createElement("Select")
selectBox.name="Cod_produto"
//abre o ASP para pegar os valores
<%
Sql_Prod = "SELECT * FROM Tb_Fin_Produtos where St_Produto = 1"
Set rs_buscaproduto = Conn_Fin.Execute(Sql_Prod)
%>
//Cria as opcoes
<%
Do while not rs_buscaproduto.eof
Conta = Conta + 1
%>
var option<%=Conta%> = document.createElement("OPTION")
option<%=Conta%>.text="<%=rs_buscaproduto.fields("Desc_Produto")%>"
option<%=Conta%>.value=<%=rs_buscaproduto.fields("Cod_Produto")%>
selectBox.options.add(option<%=Conta%>)
<%
rs_buscaproduto.movenext
Loop
%>
td1.appendChild (selectBox)
var td2 = document.createElement("TD")
td2.setAttribute("width", "17%");
td2.setAttribute("class", "td_lista");
var currentElement = document.createElement("input");
currentElement.setAttribute("type", "text");
currentElement.setAttribute("id", "Quantidade");
currentElement.setAttribute("name", "Quantidade");
td2.appendChild(currentElement);
var td3 = document.createElement("TD")
td3.setAttribute("width", "6%");
td3.setAttribute("align", "center");
td3.setAttribute("class", "td_lista_end");
var currentElement = document.createElement("input");
currentElement.setAttribute("type", "button");
currentElement.setAttribute("class", "botoes");
currentElement.setAttribute("value", "X");
currentElement.setAttribute("onClick", "deleteRow(this.parentNode.parentNode.rowIndex)");
td3.appendChild(currentElement);
row.appendChild(td1)
row.appendChild(td2)
row.appendChild(td3)
tbody.appendChild(row)
}
Estou usando a seguinte função para remover a linha.
// Função responsável em receber um objeto e extrair as informações necessárias para a remoção da linha.
function removerLinha(obj) {
// Capturamos a referência da TR (linha) pai do objeto
var objTR = obj.parentNode.parentNode;
// Capturamos a referência da TABLE (tabela) pai da linha
var objTable = objTR.parentNode;
// Capturamos o índice da linha
var indexTR = objTR.rowIndex;
// Chamamos o método de remoção de linha nativo do JavaScript, passando como parâmetro o índice da linha
objTable.deleteRow(indexTR);
// Exibe uma mensagem de confirmação da remoção
alert("Produto Removido com Sucesso!!");
}
Ela até remove a linha, mas sempre a ultima e não a escolhida…