Seguinte, eu tenho uma função que cria tr's e td's (com seu devido conteudo) de acordo com o valor inserido num certo textbox.
Funcionar, ela funciona hahaha
Mas o problema é:Pode ser que já tenha alguma coisa na tabela.
Ex: a pagina acaba de carregar, o cara digita 1 no campo e clica no botão. O script insere 1 linha, blz.
Mas ae, ele decide q precisa de 2 campos, digita dois e clica no botão: 1 + 2 = 3 linhas... até ae é aceitavel (apesar de ser errado), pq eu poderia chamar o botão de "Inserir linhas".
Mas pode ser que o cara coloque 10 linhas. mas ae perceba que só vai usar 8, digita 8 no campo e clica no botão: 10 + 8 = 18 linhas, e era pra ter só 8...
Eu já tinha passado por isso com selects, eu usei isto no começo da função
CODE
var sel = document.getElementById("id_do_select");
sel.innerHTML = "";
sel.innerHTML = "";
Mas eu tentei o mesmo com a tabela, e o resultado é:
"Erro em tempo de execução desconhecido"
É mole?
Alguém sabe como apagar o conteudo da tabela (pra ser exato, o conteudo de um TBODY)???
Bom, espero que possam me ajudar.
Obrigado.
PS: Segue a função, que sabe ajude em algo
function atualiza(){
qtd = document.dados.campos.value;
if (!qtd || qtd <= 0 || isNaN(qtd)){
alert("Quantidade de campos inválida.\nCertifique-se de que o valor inserido é maior que 0\ne que sejam apenas números.");
return false;
}
var tbl = document.getElementById("tabela");
if (tbl.innerHTML) tbl.innerHTML = ""; // aqui dá erro
for ( var i = 0; i < qtd; i++){
var tr = document.createElement('TR');
var td1 = document.createElement('TD');
var td2 = document.createElement('TD');
var td3 = document.createElement('TD');
var tbox = document.createElement('INPUT');
tbox.type = "text";
tbox.size = "20";
tbox.name = "tab"+i;
tbox.className = "text";
var slct = document.createElement('SELECT');
slct.name = "bd"+i;
slct.className = "text";
for ( var a = 0; a < campos.length; a++){ // a variavel campos é uma array criada externamente
var opt = document.createElement('OPTION');
opt.value = campos[a];
opt.innerHTML = campos[a];
slct.appendChild(opt);
}
td1.appendChild(tbox);
td2.innerHTML = "-->"
td3.appendChild(slct);
tr.appendChild(td1);
tr.appendChild(td2);
tr.appendChild(td3);
tbl.appendChild(tr);
}
}

Help














