Ir para o conteúdo

Publicidade

 Estatísticas do Fórum

  • 0 Usuários ativos

    0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

Foto:

mostrar e ocultar coluna tabela

  • Por favor, faça o login para responder
7 respostas neste tópico

#1 cristianokiu

cristianokiu
  • Membros
  • 23 posts

Postado 23 julho 2007 - 14:49

Pessoal estou precisando montar um tabela mas queria que no top tivesse no titulo um link para ocutar a coluna e deixar apenas um icone para clicar e abrir novamente a coluna..

será q algum poderia me ajudar???
  • 0

#2 jonathandj

jonathandj

    Jonathan Cardozo

  • Membros
  • 4.650 posts

Postado 23 julho 2007 - 15:07

movido Asp para Javascript
  • 0

#3 cristianokiu

cristianokiu
  • Membros
  • 23 posts

Postado 23 julho 2007 - 15:14

O código é este em baixo vai montar 6 colunas e 6 linhas sendo a primeira coluna e primeira linha o titulo das colunas e ao clicar no titulo gostaria q ela ficasse parcialmente oculta as colunas..
preciso colocar o codigo javascript no asp...



<%
	Dim arr(5)
	
	For y=1 to UBOUND(arr)
		arr(y) = "Coluna 0"& y
	Next
	
	linhas = 5
	
	
	Response.Write "<table border=1>"
	
	Response.Write "<tr><td>Descrição</td>"

	For x=1 to UBOUND(arr)
		Response.Write "<td>Desc. "& x &"</td>"
	Next
	
	Response.Write "</tr>"
	
	For y=1 to UBOUND(arr)
		Response.Write "<tr><td>" &  arr(y) & "</td>"
		
		For x=1 to linhas
			Response.Write "<td>"& x &"</td>"
		Next
		
		Response.Write "</tr>"
	Next
	
	Response.Write "</table>"	
	
	
%>

  • 0

#4 Leonardo P

Leonardo P
  • Membros
  • 344 posts

Postado 23 julho 2007 - 15:16

cara dá uma id pra tabela e no link você coloca a chamada pra uma função javascript. na função você coloco assim.
[codebox]if(getElementById(id).style.display=="none"){
getElementById(id).style.display=="display";}
else{getElementById(id).style.display="none";}[/codebox]
  • 0

#5 cristianokiu

cristianokiu
  • Membros
  • 23 posts

Postado 23 julho 2007 - 15:21

mas neste caso iria sumir a tabela inteira e não somente a coluna
  • 0

#6 Leonardo P

Leonardo P
  • Membros
  • 344 posts

Postado 23 julho 2007 - 15:26

põe a id na coluna então e testa...
  • 0

#7 cristianokiu

cristianokiu
  • Membros
  • 23 posts

Postado 23 julho 2007 - 15:47

Então Leonardo do jeito q você me falou nao consegui, mas consegui fazer aqui de outra forma .. mas vlw pela dica.. agora queria dar uma melhorada será q alguem me ajuda.

<%
	Dim arr(5)
	
	For y=1 to UBOUND(arr)
		arr(y) = "Coluna 0"& y
	Next
	
	linhas = 5
%>	
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script>
	function oculta(x){
		linhas = <%=linhas%>;
		x = 'col' + x;
		//alert(x);
		//alert(linhas);
		
		for(i=1;i<=linhas;i++){
			//alert(x + i);
			if(document.getElementById(x + i).style.display == 'none'){
				document.getElementById(x + i).style.display = 'block';
			} else {
				document.getElementById(x + i).style.display = 'none';				
			}
		}
	
	}
</script>
</head>
<%
	
	Response.Write "<table border=1>"
	
	Response.Write "<tr><td>Descrição</td>"

	For x=1 to UBOUND(arr)
		Response.Write "<td style='text-align:center;cursor:pointer;' onClick='oculta("& x &")'>"& x &"</td>"
	Next
	
	Response.Write "</tr>"
	
	For y=1 to UBOUND(arr)
		Response.Write "<tr><td>" & arr(y) & "</td>"
		
		For x=1 to linhas
			Response.Write "<td><div style='width:80px;text-align:center' id= 'col"&  x & y & "'>"& x &"</div></td>"
		Next
		
		Response.Write "</tr>"
	Next
	
	Response.Write "</table>"	
	
	
%>

<body>
</body>
</html>

  • 0

#8 cristianokiu

cristianokiu
  • Membros
  • 23 posts

Postado 23 julho 2007 - 16:34

olha ai consegui hospedar o script
HideShowCol

agora queria uma ajuda para melhorar.. por exemplo pode ver q qdo eu oculto a coluna as td ficam sem borda.. sei q precido dar um espaco(&nbsp), mas fica estranho qdo faco isso.

e outra coisa sera q nao tem uma maneira mais facil de fazer??

vou postar o codigo denovo pois fiz algumas alterações agora para almentar a qtd de colunas e linhas so aumentar o tamanho do array.

<%
	Dim arr(10)
	
	
	For y=1 to UBOUND(arr)
		arr(y) = "Coluna 0"& y
	Next
	
	linhas = UBOUND(arr)
%>	
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script>
	function oculta(x){
		linhas = <%=linhas%>;
		x = 'col' + x;
		//alert(x);
		//alert(linhas);
		
		for(i=1;i<=linhas;i++){
			//alert(x + i);
			if(document.getElementById(x + i).style.display == 'none'){
				document.getElementById(x + i).style.display = 'block';
			} else {
				document.getElementById(x + i).style.display = 'none';				
			}
		}
	
	}
</script>
</head>
<%
	
	Response.Write "<table border=1>"
	
	Response.Write "<tr><td>Descrição</td>"

	For x=1 to UBOUND(arr)
		Response.Write "<td style='text-align:center;cursor:pointer;' onClick='oculta("& x &")'>"& x &"</td>"
	Next
	
	Response.Write "</tr>"
	
	For y=1 to UBOUND(arr)
		Response.Write "<tr><td>" & arr(y) & "</td>"
		
		For x=1 to linhas
			Response.Write "<td><div style='width:80px;text-align:center' id= 'col"&  x & y & "'>"& x &"</div></td>"
		Next
		
		Response.Write "</tr>"
	Next
	
	Response.Write "</table>"	
	
	
%>

<body>
</body>
</html>

  • 0