Validação CPF com Expressão Regular e jQuery

Abaixo segue uma função de validar CPF com poucas linhas, utilizando Expressão Regular e jQuery.

/* Valida CPF */
            function isCPF(value) {
                value = jQuery.trim(value);
                cpf = value.replace(/\.|-|\//gi,''); // elimina .(ponto), -(hifem) e /(barra)
                while(cpf.length < 11) cpf = "0"+ cpf;
                var expReg = /^0+$|^1+$|^2+$|^3+$|^4+$|^5+$|^6+$|^7+$|^8+$|^9+$/;
                var a = [];
                var b = new Number;
                var c = 11;
                for (i=0; i&lt;11; i++){
                    a[i] = cpf.charAt(i);
                    if (i < 9) b += (a[i] * --c);
                }
                if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x }
                b = 0;
                c = 11;
                for (y=0; y&lt;10; y++) b += (a[y] * c--);
                if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; }
                if ((cpf.charAt(9) != a[9]) || (cpf.charAt(10) != a[10]) || cpf.match(expReg)) return false;
                return true;
            }

TinyTable JavaScript classificador de tabelas

TinyTable

Este script classificador e atualizador de tabela fácil de usar e cheia de recursos em apenas 2.5KB.
Os novos recursos incluem destaque de coluna, paginação (opcional), suporte para links, e data.
Para implementar é simples:

var sorter = new TINY.table.sorter('sorter');
sorter.head = 'head'; //header class name
sorter.asc = 'asc'; //ascending header class name
sorter.desc = 'desc'; //descending header class name
sorter.even = 'evenrow'; //even row class name
sorter.odd = 'oddrow'; //odd row class name
sorter.evensel = 'evenselected'; //selected column even class
sorter.oddsel = 'oddselected'; //selected column odd class
sorter.paginate = true (false); //toggle for pagination logic
sorter.pagesize = 15 (20); //toggle for pagination logic
sorter.currentid = 'currentpage'; //current page id
sorter.limitid = 'pagelimit'; //page limit id
sorter.init('table',1);

clique para veja um exemplo.

clique para baixar o código TinyTable


JavaScript – atributo innerHTML

Para esclarecer algumas dúvidas de alguns colegas, resolvi disponibili aqui no site,
esse exemplo simples de javascript, que em resumo trata-se do uso da atributo “innerHTML”
dos ‘objetos’ xhtml.

exemplo de código: Ao digitar um texto em um ‘input’ do tipo ‘text’ é
alimentado outro ‘objeto’ (nota: no javascript as tags são consideradas como objetos).

<label id="id_label"></label>
<input id="id_campo" onkeyup="alimentaLabel()" type="text" />

onde temos:

  • Inicialmente temos um ‘label’ vazio que receberá o valor digitado no ‘campo de texto’
  • O  campo de texto.
  • Observem a função “alimentaLabel()” que acontece no evento “onkeyup” (o evento onkeyup ocorre após uma tecla do teclado é ‘precionada’).  Ela ainda não existes, vamos criá-la:
<script type="text/javascript">
       function alimentaLabel(){
		var idDestino = document.getElementById( "id_label" );
		var objOrigem = document.getElementById( "id_campo" );
		idDestino.innerHTML = objOrigem.value;
	}
</script>

Lembrando que:

  • A tag ‘script’ dever esta detro da tag ‘head’ do seu documento html
  • Observem que a variável javascript ‘idDestino’ recebe o a tag ‘Label’, poderia ser qualquer outra tag ( input text, por exemplo) atrevés do seu identificador: ‘id_label’.
  • O mesmo aconteço com a váriável objOrigem, que recebe o campo de origem (input text)
  • E abaixo, é acrescentado um conteúdo html (o valor do campo de texto) no ‘Label’ (idDestino) , através do atributo ‘innerHTML’.

é simples ou não??

baixe este exemplo
Pretendo, postar algumas dicas como estas com mais frequencia..

Caso tenham alguma sugestão ou solicitação, é só comentar. um abraço.