<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Últimas mensagens do tópico "Esconder os campos de consulta do filtro da listagem. "]]></title>
		<link>http://www.neoframework.org/forum/posts/list/5.page</link>
		<description><![CDATA[Últimas mensagens enviadas no tópico "Esconder os campos de consulta do filtro da listagem. "]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ Bom dia, eu fiz uma alteração aqui nos templates em que os campos do filtro da consulta ficam escondidos(como se não existisse filtro) e coloquei um link ao lado do "Criar" com o nome de "Filtro" que quando acionado o filtro aparece.
Tambem criei um outro botão ao lado do botão "Enviar" com o nome de "Limpar Filtro" com o codigo:

<span class="genmed"><b>Code:</b></span><br>
		<div>
		<pre bbCodeId="pre-code" style="overflow: auto; width: 95%; max-height: 350px; height:expression(this.scrollHeight > 350 ? '350px' : 'auto');">
function limparFiltro&#40;&#41;{
	list = document.getElementsByTagName&#40;'input'&#41;;
	for&#40;i=0; i &lt; list.length; i++&#41;{
		if &#40;list&#91;i&#93;.type == 'text'&#41;
		list&#91;i&#93;.value = '';
	}
	list = document.getElementsByTagName&#40;'select'&#41;;
	for&#40;i=0; i &lt; list.length; i++&#41;{
		list&#91;i&#93;.value = '&lt;null&gt;';
	}
	document.getElementById&#40;'filtrar'&#41;.click&#40;&#41;;
}
</pre>
		</div>

em que limpa todos os campos do filtro sejam quantos for.
Essa ideia é boa????]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#212</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#212</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 11:09:49]]> GMT</pubDate>
				<author><![CDATA[ guilherme.pimentel]]></author>
			</item>
			<item>
				<title>Re:Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ Eu nao entendi a finalidade disso guilherme, teria como explicar melhor, em que ganharia em uma pessoa colocar isso na app?]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#214</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#214</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 11:39:00]]> GMT</pubDate>
				<author><![CDATA[ pedro.goncalves]]></author>
			</item>
			<item>
				<title>Re:Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ Quando o usuario entrar na tela de listagem de dados e o foco dele não é fazer filtro, e sim criar um registro ou editar um registro que ja esta sendo exibido ele não precisaria ver o filtro de cara ... ele so iria ver o filtro caso ele queira filtrar. 
Desta forma a tela fica mais limpa e mais direta.... é so uma sugestão .... ]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#215</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#215</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 11:43:57]]> GMT</pubDate>
				<author><![CDATA[ guilherme.pimentel]]></author>
			</item>
			<item>
				<title>Re:Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ Ah tah!!! entendi!!!

Cara.. legal.. mais isso é uma coisa que nao precisa estar no framework..

faz o seguinte.. faz um texto explicando como fazer isto que publico nos tutoriais do site.. pode ser?]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#217</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#217</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 11:46:14]]> GMT</pubDate>
				<author><![CDATA[ pedro.goncalves]]></author>
			</item>
			<item>
				<title>Re:Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ ok vou montar aqui e coloco nesse topico ... valeu pela atenção]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#219</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#219</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 11:47:32]]> GMT</pubDate>
				<author><![CDATA[ guilherme.pimentel]]></author>
			</item>
			<item>
				<title>Re:Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ Blz!! eu que agradeço!]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#224</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#224</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 12:49:01]]> GMT</pubDate>
				<author><![CDATA[ pedro.goncalves]]></author>
			</item>
			<item>
				<title>Re:Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ Como colocar os campos do formulario de filtro não fique sempre sendo exibido, somente seram exibidos quando solicitado pelo usuario.


Criar o pacote:

br.com.linkcom.neo.view.template

Colocar os seguintes arquivos para serem alterados:

JanelaFiltroTag.jsp: 

Colocar o style="display:none;" para que o table não seja exibido ao entrar entrar na tela e tambem colocar o nome no <table> para que ele seja gerenciado pelo JavaScript da outra JSP

<span class="genmed"><b>Code:</b></span><br>
		<div>
		<pre bbCodeId="pre-code" style="overflow: auto; width: 95%; max-height: 350px; height:expression(this.scrollHeight > 350 ? '350px' : 'auto');">
&lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%&gt;
&lt;%@ taglib prefix="n" uri="neo"%&gt;
&lt;%@ taglib prefix="combo" uri="combo"%&gt;
&lt;%@ taglib prefix="t" uri="template"%&gt;

&lt;n:bean name="${tag.name}"&gt;
&lt;table id="filtro" style="display=none" width="100%" align="center" class="window inputWindow"  cellpadding="0" cellspacing="0"&gt;
	&lt;tr&gt;
		&lt;td&gt;
			&lt;n:doBody /&gt;
		&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;
&lt;/n:bean&gt;
</pre>
		</div>

ListagemTag.jsp: 

Criar uma função verFiltro() que irá gerenciar o table acima e tambem criar um link ao lado do "Criar" que vai exibir ou esconder o os campos do formulario de consulta.

<span class="genmed"><b>Code:</b></span><br>
		<div>
		<pre bbCodeId="pre-code" style="overflow: auto; width: 95%; max-height: 350px; height:expression(this.scrollHeight > 350 ? '350px' : 'auto');">
&lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%&gt;
&lt;%@ taglib prefix="n" uri="neo"%&gt;
&lt;%@ taglib prefix="combo" uri="combo"%&gt;
&lt;%@ taglib prefix="t" uri="template"%&gt;
&lt;script&gt;
	function verFiltro&#40;&#41;{
		if &#40;document.getElementById&#40;'filtro'&#41;&#41;{
			if &#40;document.getElementById&#40;'filtro'&#41;.style.display == ''&#41;{
				document.getElementById&#40;'filtro'&#41;.style.display = 'none';
			}else document.getElementById&#40;'filtro'&#41;.style.display = '';
		}
	}
&lt;/script&gt;
&lt;n:form validate="false"&gt;
	&lt;n:validation&gt;
		&lt;input type="hidden" name="notFirstTime" value="true"/&gt;
		&lt;table class="outterTable" cellspacing="0" cellpadding="0" align="center"&gt;
			&lt;tr style="background: url&#40;'${pageContext.request.contextPath}/resource/img/titulo.gif'&#41;" class="outterTableHeader"&gt;
				&lt;td&gt;
					&lt;span class="outterTableHeaderLeft"&gt;
						${listagemTag.titulo}						
					&lt;/span&gt;
					&lt;span class="outterTableHeaderRight"&gt;
						&lt;c:if test="${listagemTag.showNewLink || !empty listagemTag.linkArea}"&gt;
							${listagemTag.invokeLinkArea}
							&lt;c:if test="${listagemTag.showNewLink}"&gt;						
								&lt;n:link action="criar" class="outterTableHeaderLink"&gt;Criar&lt;/n:link&gt;
							&lt;/c:if&gt;						
						&lt;/c:if&gt;					
					&lt;/span&gt;
					&lt;span class="outterTableHeaderRight"&gt;
						&lt;a href="#" onclick="verFiltro&#40;&#41;" class="outterTableHeaderLink"&gt;Filtro&lt;/a&gt;
					&lt;/span&gt;
				&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
				&lt;td&gt;
					&lt;n:doBody /&gt;
				&lt;/td&gt;
			&lt;/tr&gt;
		&lt;/table&gt;
	&lt;/n:validation&gt;
&lt;/n:form&gt;

</pre>
		</div>


TabelaFiltroTag.jsp: 

Foi criada a função limparFiltro() que limpa todos os inputs e combos pois não posso colocar fixo será utilizado por qualquer formulario de consulta caso exista outro tipo de componente de entrada é so criar um outro loop que irá limpar esse outro componente como:
<span class="genmed"><b>Code:</b></span><br>
		<div>
		<pre bbCodeId="pre-code" style="overflow: auto; width: 95%; max-height: 350px; height:expression(this.scrollHeight > 350 ? '350px' : 'auto');">
		list = document.getElementsByTagName&#40;'select'&#41;;
		for&#40;i=0; i &lt; list.length; i++&#41;{
			list&#91;i&#93;.value = '&lt;null&gt;';
		}</pre>
		</div>

e outro botão "Limpar Filtro" para executar essa função.

<span class="genmed"><b>Code:</b></span><br>
		<div>
		<pre bbCodeId="pre-code" style="overflow: auto; width: 95%; max-height: 350px; height:expression(this.scrollHeight > 350 ? '350px' : 'auto');">
&lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%&gt;
&lt;%@ taglib prefix="n" uri="neo"%&gt;
&lt;%@ taglib prefix="combo" uri="combo"%&gt;
&lt;%@ taglib prefix="t" uri="template"%&gt;

&lt;c:set var="panelGridColumns" value="${n:default&#40;2, TabelaFiltroTag.columns&#41;}" /&gt;
&lt;c:set var="panelGridStyleClass" value="${n:default&#40;'inputTable', TabelaFiltroTag.styleClass&#41;}" /&gt;
&lt;c:set var="panelGridColumnStylesClasses" value="${n:default&#40;'labelColumn, propertyColumn', TabelaFiltroTag.columnStyleClasses&#41;}" /&gt;

&lt;script type="text/javascript"&gt;
	function limparFiltro&#40;&#41;{
		list = document.getElementsByTagName&#40;'input'&#41;;
		for&#40;i=0; i &lt; list.length; i++&#41;{
			if &#40;list&#91;i&#93;.type == 'text'&#41;
			list&#91;i&#93;.value = '';
		}
		list = document.getElementsByTagName&#40;'select'&#41;;
		for&#40;i=0; i &lt; list.length; i++&#41;{
			list&#91;i&#93;.value = '&lt;null&gt;';
		}
		document.getElementById&#40;'filtrar'&#41;.click&#40;&#41;;
		return false;
	}
&lt;/script&gt;

&lt;n:panelGrid columns="${panelGridColumns}"
	 style="${tag.style}"
	 colspan="${tag.colspan}"
	 columnStyleClasses="${panelGridColumnStylesClasses}"
	 columnStyles="${tag.columnStyles}"
	 dynamicAttributesMap="${tag.dynamicAttributesMap}"
	 rowStyles="${tag.rowStyles}"
	 styleClass="${panelGridStyleClass}"
	 propertyRenderAsDouble="${tag.propertyRenderAsDouble}" width="${tag.width}" rowStyleClasses="${tag.rowStyleClasses}" cellpadding="1"&gt;
		
		&lt;t:propertyConfig mode="input" showLabel="${tag.propertyShowLabel}" renderAs="double"&gt;
			&lt;n:doBody /&gt;
		&lt;/t:propertyConfig&gt;

&lt;/n:panelGrid&gt;

&lt;c:if test="${tag.showSubmit}"&gt;
	&lt;table&gt;
		&lt;tr&gt;
			&lt;td&gt;
				&lt;div class="actionBar"&gt;
					&lt;n:submit id="filtrar" action="${TabelaFiltroTag.submitAction}" validate="${TabelaFiltroTag.validateForm}" url="${TabelaFiltroTag.submitUrl}"&gt;Filtrar&lt;/n:submit&gt;
				&lt;/div&gt;
			&lt;/td&gt;
			&lt;td&gt;
				&lt;div class="actionBar"&gt;
					&lt;button onclick="limparFiltro&#40;&#41;" &gt;Limpar Filtro&lt;/button&gt;
				&lt;/div&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/table&gt;
&lt;/c:if&gt;
</pre>
		</div>

Se der algum problema ou se estiver dando problema é so falar....]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#246</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#246</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 13:46:45]]> GMT</pubDate>
				<author><![CDATA[ guilherme.pimentel]]></author>
			</item>
			<item>
				<title>Re:Esconder os campos de consulta do filtro da listagem. </title>
				<description><![CDATA[ Vou testar e publicar!

Obrigado pelo tutorial]]></description>
				<guid isPermaLink="true">http://www.neoframework.org/forum/posts/list/58.page#247</guid>
				<link>http://www.neoframework.org/forum/posts/list/58.page#247</link>
				<pubDate><![CDATA[Tue, 26 Jun 2007 13:52:23]]> GMT</pubDate>
				<author><![CDATA[ pedro.goncalves]]></author>
			</item>
	</channel>
</rss>
