Aplicação de cadastros JavaScript

Documentos relacionados
Introdução. Surge em 1995 (Brendan Eich, programador da Netscape) com o nome de Livescript

Introdução ao Javascript

WEBDESIGN. Professor: Paulo Marcos Trentin - Escola CDI de Videira

Construção de Sites 2. Prof. Christiano Lima Santos

Introdução à HTML Dinámico. O linguagem JavaScript.

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

INTRODUÇÃO AO DESENVOLVIMENTO FRONT-END COM HTML, CSS E JAVASCRIPT

Introdução a Javascript

INTRODUÇÃO AO JQUERY PROF. ME. HÉLIO ESPERIDIÃO

Java: Linguagem de programação (OOP) JavaScipt: Linguagem de scripts (OOP)

Os componentes HTML possuem a capacidade de configurar eventos

Apostila - Desenvolvimento web com PHP

Manual. Portal de Seminovos

Estrutura de Dados Funções e Procedimentos

Banco de Dados. -Aprendendo conceitos -Usando o SQL Conf para: -Conectar no banco de dados -Criar, alterar, excluir e consultar estruturas de tabelas

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

JAVASCRIPT Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes

Protocolo Eletrônico ( Acesso Externo )

Manual. Portal de Seminovos

Minicurso de JavaScript PET Sistemas de Informação Terceiro Dia Anthony Tailer. Clécio Santos. Rhauani Fazul.

Desenvolvimento Web. JavaScript aula II variáveis (cont.) e diálogos. Professor: Bruno Gomes

JAVASCRIPT. Desenvolvimento Web I

No Windows há basicamente dois tipos de programas de usuário:

Algoritmos e Programação

Para realizar a consulta das ações de extensão, acesse o SIGAA Módulos Portal do Docente Extensão Planos de Trabalho

INTRODUÇÃO. JavaScript PROF. ME. HÉLIO ESPERIDIÃO

Avante Instruções de Acesso ao AVANT Aluno STM

MANUAL EPROC / TJTO. Endereço eletrônico:

Aula 12 Aplicação e prática do JS

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu. Math, Strings, Arrays e Date

Criando a Classe Pessoa Exemplo: Crie e modele uma classe que receba o nome, idade e peso de uma Pessoa. Ao final mostre os dados na tela.

AULA 2 VISÃO BÁSICA DE CLASSES EM PHP

Programação para web HTML: Formulários

Cartilha de Orientação para Gerenciar Liberação de Assinatura Externa. Brasília Agosto de 2019

Shell Script. Rafael Silva Guimarães

1 Criando um projeto. Instituto Federal do Paraná

Requisitos Mínimos. 1GB de espaço em disco 2GB de memória (recomendável 4GB) Versão mais recente do Java Acesso a Internet

Introdução ao SciLab. SciLab O que é? Onde obter o programa:

CONTEÚDO PROGRAMÁTICO

Manual do Usuário RESULTWEB. Módulo Controle de acesso (Agendamento de acesso de visitantes) Versão 1.0

Linguagem de Programação. Tutorial 3 Os comandos if, else e else if

Manual do Usuário. Sistema de Contas Públicas

INTRODUÇÃO AO JQUERY PARTE 2. Prof. Me. Hélio Esperidião

MANUAL Credenciados SGMC Sistema de Gestão de Modalidades de Credenciamento

Ranking das linguagens de programação mais utilizadas. TIOBE Index PyPL Index Redmonk IEEE Spectrum

Para iniciarmos o trabalho se faz necessária a implantação da GUIA DESENVOLVEDOR. Botão Direito do Mouse; Personalizar Faixa de Opções

Desenvolvendo aplicações Java

O JasperReports Studio é uma ferramenta de software que oferece um ambiente visual para criar relatórios para a plataforma Java. É open source.

Aula 11 Introdução ao Java Script

Aplicativos móveis com HTML5

Manual do painel administrativo. Site Instituto de Oncologia do Vale IOV

A c c e s s. Data Lógica Informática. Ambiente Real Conhecimento de Verdade. Carga Horária (referencial): 30 horas. Pré-requisito: Windows

Conexão com Banco de Dados

Windows Forms Applications - Introdução. Prof. Robinson Alves IFRN

JavaScript: Validação de Formulários. Prof. Ivanilton Polato

Manual Sistema de Automação de Pedidos Data C

05 Como utilizar POO no ambiente gráfico do C#?

Passo-a-passo para desenvolver um Programa usando a Linguagem Python

O AMBIENTE DE PROGRAMAÇÃO VISUAL -PLANO DE ENSINO. Prof. Angelo Augusto Frozza, M.Sc.

SAO-WEB Manual do Usuário

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

Minicurso de JavaScript PET Sistemas de Informação Segundo Dia Anthony Tailer. Clecio dos Santos. Rhauani Fazul.

Prof. Esp. Andrew Rodrigues 1

Ambiente de Programação, rastreamento e entrada de dados. MCG114 Programação de Computadores I. Interpretador de Comandos. Interpretador de Comandos

Protocolo Eletrônico ( Acesso Externo )

Tutorial de Extensibilidade

Estruturas de Controle em c#

Integração Java x Flex

Mini apostila de Python - Oficina de Vestibulandos. PET Computação - UFPR September 2016

Introdução a Programação Web com PHP

Fa u amen o E e ôn co CASSEMS

JavaFX Classe de Controle e Eventos. Prof. Vicente Paulo de Camargo

Manual do Utilizador. Share Point One Drive

Transcrição:

Aplicação de cadastros JavaScript Introdução: Neste artigo aprenderemos a criar uma tela de cadastros de clientes utilizando a linguagem JavaScript. O que é Javascript? JavaScript é uma linguagem de programação baseada em scripts e padronizada pela ECMA International (associação especializada na padronização de sistemas de informação). Foi criada por Brendan Eich (Netscape) e surgiu em 1995 como linguagem de script client-side de páginas web. É uma linguagem dinâmica, orientada a objetos e criada com sintaxe similiar à linguagem C. Apesar de conter Java no nome, a linguagem JavaScript é distinta da linguagem Java e apresenta recursos não disponibilizados em Java ou C++.Os scripts desenvolvidos em JavaScript são muito populares e amplamente integrados em páginas web devido à facilidade de interação com o Document Object Model (DOM) da página. Uma linguagem de script tem a funcionalidade de ser executada no interior de programas ou de outra linguagem de programação. Outras linguagens usadas como script são: ActionScript, PHC, Python, VBScript, entre outras. Sistema de exemplo

*Iremos disponibilizar o index.html (só a tela sem as funções) e iremos fazer todas as funções em JavaScript. Nesta tela iremos ter os itens (Nome, Telefone, Email, Cidade, Ativo? ) e ao clicar no botão Cadastar, será listado os dados no Grid Listar Clientes conforme print acima. Para Criar este exemplo iremos utilizar a ferramenta Visual Studio 2012 Clique no Menu File / Open/ Web Site. Selecione a sua pasta HTML BASE.

Em sua pasta crie a pasta Scripts e dentro dela crie duas pastas chamadas home e shared, estas pastas será onde ficará os scripts. Para criar um JavaScript Selecione uma pasta.

Descrição detalhada do sistema 1º - Crie o util.js Primeiro Js, que ficará na pasta shared, terá a função de deixar a label datanascimento com o formato DATE e também criará um Array que guardará as Cidades. Código: // 1ª JS // Essa função vai ser executar a função SetYearFooter e a função PreencheDDLCidade. (function () { // Função quer será executada assim que a página for carregada! window.onload = ExecutarTodasFuncoes; )(); // Função Nomeada (SetYearFooter) function SetYearFooter() { // debugger: uma palavra reservada do JavaScript para debugar o código. Quando o Navegador estiver com o Console (f12) dele aberto, vai parar a interpretação // do código quando encontrar esse palavra debugger; var lblfooter = document.getelementbyid('lbltimenow'); // new Date() = Estamos instânciando a função Date() do javascript, e chamando o getfullyear() para retornar o ano

lblfooter.textcontent = new Date().getFullYear().toString(); function ExecutarTodasFuncoes() { SetYearFooter(); PreencheDDLCidade(); // Variável Global com o uma lista de objetos var Cidades = [ { texto: "São Paulo", valor: "SP", { texto: "Rio de Janeiro", valor: "RJ", { texto: "Bahia", valor: "BA", { texto: "Minas Gerais", valor: "MG", { texto: "Distrito Federal", valor: "DF" ]; // Função para preencher o DropDownList function PreencheDDLCidade() { var ddlcidade = document.getelementbyid('ddlcidade'); var options = '<option value="0">--- Selecione ---</option>'; var index = 0; do { options += '<option value="'; options += Cidades[index].valor; options += '">'; options += Cidades[index].texto; options += '</option>'; index++; while (Cidades.length > index); ddlcidade.innerhtml = options; 2º - Crie o cadastrar.js 2 Js, ficará na pasta home, terá a função: *Validar os dados; *Cadastrar; *Limpar as mensagens de erro que ocorre quando não é válido os dados.

Código: // 2º JS // Aqui no JS cadastrar, vamos manipular o DOM para validar o cadastrado do cliente. E só mostrar a mensagem de sucesso se estiver tudo // devidamente preenchido. function Validar() { var txtnome = document.getelementbyid('txtnome'); var txttelefone = document.getelementbyid('txttelefone'); var txtemail = document.getelementbyid('txtemail'); var txtdatanascimento = document.getelementbyid('txtdatanascimento'); var ddlcidade = document.getelementbyid('ddlcidade'); var isvalido = true; // === : Igualdade de tipo e valor. Essa comparação não faz conversão de valores para saber o valor. Boa pratica utiliza-lo! // == : Igualdade de valor, somente. Ele converte um dos valores com base no outro, e assim faz a verificação dos valores. // http://stackoverflow.com/questions/359494/does-it-matter-which-equals-operator-vs-iuse-in-javascript-comparisons if (txtnome.value === '') { isvalido = false; txtnome.classlist.add('errorinput'); if (txttelefone.value === '') { isvalido = false; txttelefone.classlist.add('errorinput'); if (txtemail.value === '') { isvalido = false; txtemail.classlist.add('errorinput'); if (txtdatanascimento.value === '') { isvalido = false; txtdatanascimento.classlist.add('errorinput'); if (ddlcidade.value === '0') { isvalido = false; ddlcidade.classlist.add('errorinput'); if (isvalido === false) { var divalerta = document.getelementbyid('divalert'); var mensagem = '< strong>atenção: </ strong>preencha os campos em destaque abaixo.'

divalerta.innerhtml = mensagem; divalerta.classlist.add('alert'); divalerta.classlist.add('alert-danger'); return isvalido; function LimparMensagensErros() { var listclasserrorinput = document.getelementsbyclassname('errorinput'); while (listclasserrorinput.length > 0) { var index = (listclasserrorinput.length - 1); listclasserrorinput[index].classlist.remove('errorinput'); var divalerta = document.getelementbyid('divalert'); if (divalerta.classlist.contains('alert') divalerta.classlist.contains('alert-danger')) { divalerta.classlist.remove('alert'); divalerta.classlist.remove('alert-danger'); divalerta.innerhtml = ''; function oncadastrarclick() { LimparMensagensErros(); if (Validar()) { var txtnome = document.getelementbyid('txtnome'); var txttelefone = document.getelementbyid('txttelefone'); var txtemail = document.getelementbyid('txtemail'); var txtdatanascimento = document.getelementbyid('txtdatanascimento'); var ddlcidade = document.getelementbyid('ddlcidade'); var ckbativo = document.getelementbyid('ckbativo'); // Declarando um objeto var Cliente = {; // === new Objct(); Cliente.nome = txtnome.value.trim(); Cliente.telefone = txtnome.value.trim(); Cliente.email = txtemail.value.trim(); Cliente.dataNascimento = txtdatanascimento.value.trim(); Cliente.cidade = ddlcidade.value; Cliente.isAtivo = ckbativo.checked; // *** Após criar o 3º Js (index.js) vamos adicionar a linha abaixo: // Adicionando Cliente na lista de Cliente, só que... esse JS esta acima do index.js. Então, vamos organizar a ordem... // ** Falar sobre a forma de leitura do Navegador e a ordem interfere um com o outro... AdicionarCliente(Cliente); MensagemSucesso();

LimparCampos(); // Depois de criar o 4º JS: ListarCliente(); return true; return false; function MensagemSucesso() { var divalerta = document.getelementbyid('divalert'); var mensagem = '< strong>sucesso: </ strong>cliente cadastrado com sucesso!' divalerta.innerhtml = mensagem; // Atribuindo a lista de classes da div, a nova classes alert divalerta.classlist.add('alert'); divalerta.classlist.add('alert-success'); DesaparecerMensagemSucesso(); // Função para LimparMensagem da Div Alerta function LimparMensagem() { var divalerta = document.getelementbyid('divalert'); divalerta.innerhtml = ''; // Remove da lista de classes da div, as classes abaixo divalerta.classlist.remove('alert'); divalerta.classlist.remove('alert-success'); // Função para LimparCampos function LimparCampos() { // Cada HTML tem sua particularidade para manipular os dados dele document.getelementbyid('txtnome').value = ''; document.getelementbyid('txttelefone').value = ''; document.getelementbyid('txtemail').value = ''; document.getelementbyid('txtdatanascimento').value = ''; document.getelementbyid('ddlcidade').selectedindex = 0; document.getelementbyid('ckbativo').checked = false; document.getelementbyid('lblvalorddlcidade').textcontent = ''; document.getelementbyid('lblvalorkeypresstelefone').textcontent = ''; function DesaparecerMensagemSucesso() { // settimeout é uma função JavaScript que executa uma função após algums minutos... window.settimeout( // Criando uma function anônima // Essa função determinará o tempo em que a mensagem desaparecerá... function () { LimparMensagem();, 5000);

// Função executada no evento Blur do Text da Data de Nascimento function onvalidadatanascimentoblur(domhtml) { if (domhtml.value!== '') { // Validando se o formato da Data esta correta var arraydiamesano = domhtml.value.split('/'); if (arraydiamesano.length == 3) { var dia = parseint(arraydiamesano[0]); var mes = parseint(arraydiamesano[1]); var ano = parseint(arraydiamesano[2]); // Validar se o que foi digitado só tem números if (isnan(dia) isnan(mes) isnan(ano)) { alert('por favor, digite uma data válida.'); domhtml.value = ''; // Validar se a data esta correta... var messtring = (mes.tostring().length === 1? "0" + mes.tostring() : mes.tostring()); var diastring = (dia.tostring().length === 1? "0" + dia.tostring() : dia.tostring()); var datestring = diastring + "/" + messtring + "/" + ano; var data = new Date(ano + "-" + messtring + "-" + diastring + "T03:24:00"); if (datestring!== data.tolocaledatestring()) { alert('por favor, digite uma data válida.'); domhtml.value = ''; else { alert('por favor, adicionar uma data.'); domhtml.value = ''; function onvalidaemailblur(domhtml) { if (domhtml.value!== '') { // indexof é uma função JavaScript disponível em valores do tipo string. Ele busca na string o char indicado no parâmetro de entrada. var resultadoindexof = domhtml.value.indexof('@'); if (resultadoindexof === -1) { alert('por favor, digite um e-mail válido.'); domhtml.value = ''; // Função executada no evento Change do DropDownList (select) function onshowvalorchange(domhtml) {

var lblvalorddlcidade = document.getelementbyid('lblvalorddlcidade'); var textddl = ''; if (domhtml.selectedindex > 0) { textddl = domhtml.options[domhtml.selectedindex].text; lblvalorddlcidade.textcontent = textddl; // Função que é executado no evento KeyDown function onvalidartelefonekeydown(evt) { // Em todos os eventos, por tras dos panos, é setado na variável "event" o evento assionado... // If Ternário para verificar no objeto event que o JavaScript retorna, tem o código da tecla na propriedade keycode ou na charcode var tecla = (evt.keycode? evt.keycode : evt.charcode); var lblvalorkeypresstelefone = document.getelementbyid('lblvalorkeypresstelefone'); // Teclar com o código entre 48 e 59 ou entre 96 e 105, são númericos if ((tecla >= 48 && tecla <= 59) (tecla >= 96 && tecla <= 105)) { lblvalorkeypresstelefone.textcontent = 'Numérico'; else { lblvalorkeypresstelefone.textcontent = ''; 3º - Crie o index.js 3 Js, também ficará na pasta home, este JavaScript apenas terá a função de deixar todos os clientes cadastrados guardados em um Array. Código: // 3º JS // Nesse JS vamos deixar todos os Clientes que cadastrados de um Array de Clientes (Lista) var listclientes = []; function AdicionarCliente(cliente) { listclientes.push(cliente);

4º - Crie o listar.js 4 e último, ficará na pasta home, terá a função de listar os clientes cadastrados e também terá uma função de excluir os clientes cadastrados. Código: // 4º JS // Nesse arquivo JS vamos listar todos os clientes que estão no Objeto listclietes, que esta no arquivo index.js. function ListarCliente() { // Fazendo um IF Ternário: (Se o listclientes!== undefined? Então retorna listclientes, senão (:) retorna um array vázio) var clientes = (listclientes!== undefined? listclientes : []); var tagstbody = ''; for (var i = 0; i < clientes.length; i++) { tagstbody += '<tr onmouseover="javascript: onclienteativomouseover(this, ' + clientes[i].isativo + ');">' // Index tagstbody += (i + 1).toString(); // Nome tagstbody += clientes[i].nome; // Telefone tagstbody += clientes[i].telefone; // Email tagstbody += clientes[i].email;

// Data Nascimento tagstbody += clientes[i].datanascimento; // Cidade tagstbody += clientes[i].cidade; // Ações que poderemos fazer tagstbody += "<a href='javascript:void(0)' onclick=\"javascript: ExcluirCliente(" + i.tostring() + ");\">Excluir</a>"; tagstbody += '</tr>' var tbodyclientes = document.getelementbyid('tbodylistacliente'); tbodyclientes.innerhtml = tagstbody; // Função para Excluir o cliente dentro a listclientes (variável Global dentro do arquivo index.js function ExcluirCliente(index) { if (listclientes!== undefined && listclientes.length > index) { // confirm : É uma função do JavaScript, parecida com o alert mas, é retorna um booleano! Se o usuário clicar em "Sim", retorna um true // e se clicar em "Não" retorna false. if (confirm('tem realmente certeza que seja excluir esse cliente?')) { // splice é uma função no JavaScript, disponível no Objeto Array. O primeiro parâmetro é o index inicial do array, e o segundo parâmetro // é quantidade que será removido do Array. listclientes.splice(index, 1); // Listamos os cliente novamente ListarCliente(); // Função do MouseOver function onclienteativomouseover(domhtml, isativo) { if (isativo === false) { domhtml.style.border = 'red 1px dashed'; Por Hoje é só. Até mais pessoal.