<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Internet Affiliate Marketing &#187; validar campos formulario</title>
	<atom:link href="http://blue.muiomuio.net/tag/validar-campos-formulario/feed/" rel="self" type="application/rss+xml" />
	<link>http://blue.muiomuio.net</link>
	<description>Find great deals online</description>
	<lastBuildDate>Tue, 24 Jan 2012 12:43:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Validar formulÃ¡rios com jQuery</title>
		<link>http://blue.muiomuio.net/validar-formularios-com-jquery/</link>
		<comments>http://blue.muiomuio.net/validar-formularios-com-jquery/#comments</comments>
		<pubDate>Wed, 25 Jun 2008 17:45:36 +0000</pubDate>
		<dc:creator>Lounge22</dc:creator>
				<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[validar campos formulario]]></category>

		<guid isPermaLink="false">http://blue.muiomuio.net/?p=743</guid>
		<description><![CDATA[Normalmente quando crio um formulÃ¡rio apenas depois de o processar Ã© que o PHP envia a mensagem de erro o que pode ser chato para o cliente especialmente se o formulÃ¡rio for algo extenso. NÃ£o quero que o cliente desista apenas porque o formulÃ¡rio complicou tudo. A soluÃ§Ã£o Ã© entÃ£o usar JavaScript para detectar se [...]]]></description>
			<content:encoded><![CDATA[<p>Normalmente quando crio um formulÃ¡rio apenas depois de o processar Ã© que o PHP envia a mensagem de erro o que pode ser chato para o cliente especialmente se o formulÃ¡rio for algo extenso. NÃ£o quero que o cliente desista apenas porque o formulÃ¡rio complicou tudo.</p>
<p>A soluÃ§Ã£o Ã© entÃ£o usar JavaScript para detectar se os campos estÃ£o bem preenchidos ou nÃ£o e nos dias de hoje nÃ£o se justifica usar prompts para alertar o cliente de algo.<br />
A soluÃ§Ã£o Ã© relativamente simples com <a href="http://jquery.com/">jQuery</a>.</p>
<p><code><strong>//Filtros</strong><br />
var filters = {<br />
    requerido: function(el) {return ($(el).val() != â€ &#038;&#038; $(el).val() != -1);},<br />
    email: function(el) {return /^[A-Za-z][A-Za-z0-9_]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/.test($(el).val());},<br />
    telefono: function(el){return /^[0-9]*$/.test($(el).val());}};<br />
<strong>// ExtenÃ§Ãµes</strong><br />
$.extend({<br />
	stop: function(e){<br />
        if (e.preventDefault) e.preventDefault();<br />
        if (e.stopPropagation) e.stopPropagation();<br />
    }<br />
});<br />
<strong>// CÃ³digo</strong><br />
$(document).ready(function(){<br />
	$(â€form.validableâ€).bind(â€submitâ€, function(e){<br />
		if (typeof filters == â€˜undefinedâ€™) return;<br />
	    $(this).find(â€input, textarea, selectâ€).each(function(x,el){<br />
	        if ($(el).attr(â€classNameâ€) != â€˜undefinedâ€™) {<br />
	        $.each(new String($(el).attr(â€classNameâ€)).split(â€ â€œ), function(x, klass){<br />
	            if ($.isFunction(filters[klass]))<br />
	                if (!filters[klass](el))  $(el).addClass(â€errorâ€);<br />
	        });<br />
	        }<br />
	    });<br />
		if ($(this).find(â€.errorâ€).size() > 0) {<br />
			$.stop(e || window.event);<br />
			return false;<br />
		}<br />
	    return true;<br />
	});<br />
});<br />
	</code></p>
<h2>ExplicaÃ§Ã£o</h2>
<p>A parte de processamento do script comeÃ§a com <strong>$(document).ready</strong> o que faz com que o script seja processado apenas quando a pÃ¡gina for carregada.</p>
<p>Quando o conteÃºdo Ã© carregado o script percorre todos os formulÃ¡rios procurando uma class de CSS chamada <strong>validable</strong> (class=&#8221;validable&#8221;), podes editar esta variÃ¡vel no cÃ³digo do script, e adiciona um listener quando o formulÃ¡rio for submetido.</p>
<p>ApÃ³s o formulÃ¡rio ser submetido o script percorre todos os elementos <strong>&lt;input /&gt;, &lt;textarea /&gt; e &lt;select /&gt;</strong> procurando as suas classes e comparando-as com as declaradas na zona dos filtros.<br />
O objecto filters Ã© composto de uma sÃ©rie de mÃ©todos que sÃ£o efectuados para validar os elementos de acordo com as classes. </p>
<p>Se o elemento do html nÃ£o tiver uma classe declarada Ã© adicionada a class error (class=&#8221;error&#8221;) ao elemento e nÃ£o Ã© efectuada a verificaÃ§Ã£o do campo.</p>
<p>Podes testar o script <a href="http://www.anieto2k.com/demo/validable/">aqui</a>. Este tutorial foi adaptado para portuguÃªs. O tutorial original pode ser visto no <a href="http://www.anieto2k.com/2008/06/25/validar-formularios-con-jquery/">anieto2k.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blue.muiomuio.net/validar-formularios-com-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

