Preencher table via javascript

4 respostas
M

ae

to querendo preencher uma table ja criada na minha pagina com o resultado de uma pesquisa no banco.

o que eu faço e o seguinte eu pesquiso e recebo os valores via ajax/servlet

mas to com problemas pra preencherm minha table que ja esta criada.

como faço pra preencher essa table com os dados que recebo

aqui vai meu codigo

preciso pegar a div onde esta a table e preencher ela como faço isso??

function pesquisarDetento(){
        	
        	
        	ajaxFunction();

        	var nome = document.formDetento.nome.value;

        	

        			
        	
    		
        	var params = "nome="+nome+"&tipo=detento";
        	
        	xmlhttp.open("POST","http://localhost:8080/SIMDECON/pesquisar");//para teste mantive parametro estatico
        	alert("1")	
        	
        	
        	xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        	xmlhttp.setRequestHeader("Content-length", params.length);
        	xmlhttp.setRequestHeader("Connection", "close");
        	
			
        	xmlhttp.onreadystatechange = function(){//funçao que recebe resposta
        		if(xmlhttp.readyState == 4){
        			
        			var stringpesquisa = xmlhttp.responseText;
        			var size = stringpesquisa.length;
        			
        			
        		  				
        		document.write("	<table width='100%' border='0' cellspacing='0' cellpadding='0'>")
                        document.write("    <tr class='table-header'>")
                        document.write("      <th width='18%'><h5>Detento</h5></th>")
                        document.write("      <th width='18%'><h5>Presídio</h5></th>")
                        document.write("      <th width='18%'><h5>Cidade</h5></th>)")
                        document.write("      <th width='10%'><h5>Status</h5></th>")
                        document.write("    </tr>")
        			
        			for(var i = 0; i<4; i++){
                   	document.write("    <tr>")
        				switch (i){
        					case 0: document.write("<td>"+ stringpesquisa.substring(0, stringpesquisa.indexOf("!"))+"</td>"); break;
        					case 1: document.write("<td>"+ stringpesquisa.substring(0, stringpesquisa.indexOf("!")+"</td>")); break;
        					case 2: document.write("<td>"+ stringpesquisa.substring(0, stringpesquisa.indexOf("!")+"</td>")); break;
        					case 3: document.write("<td>"+ stringpesquisa.substring(0, stringpesquisa.indexOf("!")+"</td>")); break;
        					
        				}
                    document.write("    </tr>")
        				stringpesquisa = stringpesquisa.substring(stringpesquisa.indexOf("!")+1, size);
        			}
        		}
        	}
        	xmlhttp.send(params);
        	
        }

4 Respostas

J

Você não pode usar JQuery ai não?

Para escrever em um lugar especifico , dê um id a sua DIV e use o getElementById do document. Se não me engano, não conferi, é isso com JS puro:

document.getElementById("ID").innerHtml();

Procure algo assim pela internet.

[]'s

M

resolvi!

usei isso mesmo

vlw obrigado

ai vai a solução

var table = document.getElementById('tablePesquisa');
var row = table.insertRow(1);
row.innerHTML = "<td>"+nome+"</td> <td>"+presidio+"</td><td>"+cidade+"</td><td>"+status+"</td>";
P

Realmente, ficará com pelo menos metade das linhas.

M

nunca mexi com jquery. mas vou dar uma estudada para ver se melhoro minha codificação

valeu pela dica!
tem alguma sugestao de material?

Criado 3 de abril de 2010
Ultima resposta 5 de abr. de 2010
Respostas 4
Participantes 3