..:: MX Studio Fóruns ::..: Problema com Manipulação de Tabela por JavaScript - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Problema com Manipulação de Tabela por JavaScript Limpar o conteudo da tabela (TBODY)

#1 User is offline   Cruentus 

  • Group: Membros
  • Posts: 3
  • Joined: 07-January 04

  Posted 19 April 2006 - 07:39 PM

Falae povo!

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... dry.gif

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 = "";


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);
	}
}

0

#2 User is offline   Cruentus 

  • Group: Membros
  • Posts: 3
  • Joined: 07-January 04

Posted 21 April 2006 - 09:52 PM

Bom, como não consegui achar nada, usei divs mesmo...
Uma pouco mais trabalhoso do que tabela (nesse caso), mas pelo menos funciona hahaha

issae, []'s
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic



Publicidade




1 User(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)