Aprenda Java
Aqui na Lúcifer™ Home Page
Se vc quiser alguns exemplos de javas clique aqui
Depois que vc sair daqui, vai estar sabendo tudo sobre JAVA
Bom eu estava aqui escrevendo tudo isso e falei :
Quem será a pessoa tão boba de ficar lendo tudo isso e gastar todo esse tempo de net?
Eu sabia NINGUEM. E então depois disso eu resolvi colocar todo esse montão de letras no
Word e trasforma-lo em
aquivo, assim vcs poderão fazer o download dele, e depois com mais calma vc lê ele, né?
Manual JavaScript
Operadores Matemáticos
São operadores a serem utilizados em cálculos, referências de indexadores e manuseio de
strings.
Ao longo do manual estes operadores serão largamente utilizados, dando, assim, uma
noção mais
precisa do seu potencial.
+ adição de valor e concatenação de strings
- subtração de valores
* multiplicação de valores
/ divisão de valores
% obtem o resto de uma divisão:
Ex: 150 % 13 retornará 7
7 % 3 retornará 1
+= concatena /adiciona ao string/valor já existente. Ou seja:
x += y é o mesmo que x = x + y
da mesma forma podem ser utilizados: -= , *= , /= ou %=
Um contador pode ser simplificado utilizando-se : X++ ou X-- o que equivale as
expressões:
X = X + 1 ou X = X - 1 respectivamente.
Para inverter sinal: X = -X negativo para positivo ou positivo para negativo.
Operadores Lógicos
São operadores a serem utilizados em comandos condicionais, tais como: IF , FOR e WHILE.
Os comandos condicionais serão vistos mais a frente.
== Igual
!= Diferente
> Maior
>= Maior ou Igual
&n0bsp; < Menor
<= Menor ou Igual
&& E
|| Ou
Controles Especiais
\b - backspace
\f - form feed
\n - new line caracters
\r - carriage return
\t - tab characters
// - Linha de comentário
/*....*/ - Delimitadores para inserir um texto com mais de uma linha como comentário.
Os delimitadores naturais para uma string são " ou ' . Caso seja necessário a
utilização destes
caracteres como parte da string, utilize \ precedendo " ou '.
Ex. alert ("Cuidado com o uso de \" ou \' em uma string")
Comandos Condicionais
São comandos que condicionam a execução de uma certa tarefa à veracidade ou não de
uma
determinada condição, ou enquanto determinada condição for verdadeira.
São eles:
Comando IF
if (condição)
{ ação para condição satisfeita }
[ else
{ ação para condição não satisfeita } ]
Ex.
if (Idade < 18)
{Categoria = "Menor" }
else
{Categoria = "Maior"}
Comando FOR
for ( [inicialização/criação de variável de controle ;]
[condição ;]
[incremento da variável de controle] )
{ ação }
Ex.
for (x = 0 ; x <= 10 ; x++)
{alert ("X igual a " + x) }
ComandoWHILE
Executa uma ação enquanto determinada condição for verdadeira.
while (condição)
{ ação }
Ex.
var contador = 10
while (contador > 1)
{ contador-- }
Move condicional
receptor = ( (condição) ? verdadeiro : falso)
Ex.
NomeSexo = ((VarSexo == "M") ? "Masculino" : "Feminino")
OBS:
Nos comandos FOR e WHILE a diretiva "break" pode ser utilizada para interromper
a
condição principal e sair do loop. Da mesma forma, a diretiva "continue"
interrompe uma
ação (se determinada condição ocorrer) mas volta para o loop.
Diretivas/condições entre [ ] significam que são opcionais.
Eventos
São fatos que ocorrem durante a execução do sistema, a partir dos quais o programador
pode
definir ações a serem realizadas pelo programa.
Abaixo apresentamos a lista dos eventos possíveis, indicando os momentos em que os mesmos
podem ocorrer, bem como, os objetos passíveis de sua ocorrência.
onload - Ocorre na carga do documento. Ou seja, só ocorre no BODY do documento.
onunload - Ocorre na descarga (saída) do documento. Também só ocorre no BODY.
onchange - Ocorre quando o objeto perde o focus e houve mudança de conteúdo.
válido para os objetos Text, Select e Textarea.
onblur - Ocorre quando o objeto perde o focus, independente de ter havido mudança.
válido para os objetos Text, Select e Textarea.
onfocus - Ocorre quando o objeto recebe o focus.
válido para os objetos Text, Select e Textarea.
onclick - Ocorre quando o objeto recebe um Click do Mouse.
válido para os objetos Buton, Checkbox, Radio, Link, Reset e Submit.
onmouseover - Ocorre quando o ponteiro do mouse passa por sobre o objeto.
válido apenas para Link.
onselect - Ocorre quando o objeto é selecionado.
válido para os objetos Text e Textarea.
onsubmit - Ocorre quando um botão tipo Submit recebe um click do mouse.
válido apenas para o Form.
Criando Variáveis
A variável é criada automaticamente, pela simples associação de valores a mesma.
Ex. NovaVariavel = "Jose"
Foi criada a variável de nome NovaVariavel que, passou a conter a string Jose.
As variáveis podem ser Locais ou Globais. As variáveis que são criadas dentro de uma
função são
Locais e referenciáveis apenas dentro da função. As variáveis criadas fora de
funções são Globais,
podendo serem referenciadas em qualquer parte do documento.
Desta forma, variáveis que precisam ser referenciadas por várias funções ou em outra
parte do
documento, precisam ser definidas como globais.
Embora não seja recomendável, em uma função, pode ser definida uma variável local com
o mesmo
nome de uma variável global. Para isso utiliza-se o método de definição var.
Ex. Variável Global : MinhaVariavel = ""
Variável Local : var MinhaVariavel = ""
Escrevendo no Documento
O JavaScript permite que o programador escreva linhas dentro de uma página (documento),
através do método write. As linhas escritas desta forma, podem conter textos,
expressões
JavaScript e comandos Html. As linhas escritas através deste método aparecerão no ponto
da tela onde o comando for inserido.
Ex:
<script>
valor = 30
document.write ("Minha primeira linha")
document.write ("Nesta linha aparecerá o resultado de : " + (10 * 10 + valor))
</script>
A idéia do exemplo acima é escrever duas linhas. Entretanto o método write não insere
mudança de
linha, o que provocará o aparecimento de apenas uma linha com os dois textos emendados.
Para evitar este tipo de ocorrência, existe o método writeln que escreve uma linha e
espaceja para a
seguinte. Entretanto, em nossos testes, este comando não surtiu efeito,obtendo-se o mesmo
resultado
do método write. A solução encontrada para esta situação foi a utilização do
comando de mudança de
parágrafo da linguagem Html.
Ex:
<script>
valor = 30
document.write ("<p>Minha primeira linha</p>")
document.write ("<p>Nesta linha aparecerá o resultado de : " + (10 * 10 +
valor) + "</p>")
</script>
Isto resolve a questão da mudança de linha, porém, vai gerar uma linha em branco, entre
cada linha, por
se tratar de mudança de parágrafo. Caso não seja desejado a existência da linha em
branco, a
alternativa é utilizar o comando Html <br> que apenas muda de linha.
Ex:
<script>
valor = 30
document.write ("<br>Minha primeira linha")
document.write ("<br>Nesta linha aparecerá o resultado de : " + (10 * 10
+ valor) )
</script>
Mensagens
Existem três formas de comunicação com o usuário através de mensagens.
Apenas Observação:
alert ( mensagem )
Ex.
alert ("Certifique-se de que as informações estão corretas")
Mensagem que retorna confirmação de OK ou CANCELAR:
confirm (mensagem)
Ex.
if (confirm ("Algo está errado...devo continuar??"))
{ alert("Continuando") }
else
{ alert("Parando") }
Recebe mensagem via caixa de texto Input:
Receptor = prompt ("Minha mensagem", "Meu texto")
Onde:
Receptor é o campo que vai receber a informação digitada pelo usuário
Minha mensagem é a mensagem que vai aparecer como Label da caixa de input
Meu texto é um texto, opcional, que aparecerá na linha de digitação do usuário
Ex.
Entrada = prompt("Informe uma expressão matemática", "")
Resultado = eval(Entrada)
document.write("O resultado é = " + Resultado)
Criando Funções
Uma função é um set de instruções, que só devem ser executadas quando a função for
acionada.
A sintaxe geral é a seguinte:
function NomeFunção (Parâmetros)
{ Ação }
Suponha uma função que tenha como objetivo informar se uma pessoa é maior ou menor de
idade,
recebendo como parâmetro a sua idade.
function Idade (Anos) {
if (Anos > 17)
{ alert ("Maior de Idade") }
else
{ alert ("menor de Idade") }
}
Para acionar esta função, suponha uma caixa de texto, em um formulário, na qual seja
informada a idade
e, a cada informação, a função seja acionada.
<form> <input type=text size=2 maxlength=2 name="Tempo"
onchange="Idade(Tempo.value)">
</form> Observe-se que o parâmetro passado (quando ocorre o evento
"onchange") foi o conteúdo da
caixa de texto "Tempo" (propriedade "value") e que, na função,
chamamos de "Anos". Ou seja, não
existe co-relação entre o nome da variável passada e a variável de recepção na
função. Apenas o
conteúdo é passado.
Funções Intrínsecas
São funções embutidas na própria linguagem. A sintaxe geral é a seguinte:
Result = função (informação a ser processada)
- eval = Calcula o conteúdo da string
- parseInt - Transforma string em inteiro
- parseFloat - Transforma string em número com ponto flutuante
- date() - Retorna a data e a hora (veja o capítulo manipulando datas)
ex1: Result = eval ( " (10 * 20) + 2 - 8")
ex2: Result = eval (string)
No primeiro exemplo Result seria igual a 194. No segundo, depende do conteúdo da string,
que
também pode ser o conteúdo (value) de uma caixa de texto.
- Funções tipicamente Matemáticas:
Math.abs(número) - retorna o valor absoluto do número (ponto flutuante)
Math.ceil(número) - retorna o próximo valor inteiro maior que o número
Math.floor(número) - retorna o próximo valor inteiro menor que o número
Math.round(número) - retorna o valor inteiro, arredondado, do número
Math.pow(base, expoente) - retorna o cálculo do exponencial
Math.max(número1, número2) - retorna o maior número dos dois fornecidos
Math.min(número1, número2) - retorna o menor número dos dois fornecidos
Math.sqrt(número) - retorna a raiz quadrada do número
Math.SQRT2 - retorna a raiz quadrada de 2 (aproximadamente 1.414)
Math.SQRT_2 - retorna a raiz quadrada de 1/2 (aproximadamente 0.707)
Math.sin(número) - retorna o seno de um número (anglo em radianos)
Math.asin(número) - retorna o arco seno de um número (em radianos)
Math.cos(número) - retorna o cosseno de um número (anglo em radianos)
Math.acos(número) - retorna o arco cosseno de um número (em radianos)
Math.tan(número) - retorna a tangente de um número (anglo em radianos)
Math.atan(número) - retorna o arco tangente de um número (em radianos)
Math.pi retorna o valor de PI (aproximadamente 3.14159)
Math.log(número) - retorna o logarítmo de um número
Math.E - retorna a base dos logarítmos naturais (aproximadamente 2.718)
Math.LN2 - retorna o valor do logarítmo de 2 (aproximadamente 0.693)
Math.LOG2E - retorna a base do logarítmo de 2 (aproximadamente 1.442)
Math.LN10 retorna o valor do logarítmo de 10 (aproximadamente 2.302)
Math.LOG10E - retorna a base do logarítmo de 10 (aproximadamente 0.434)
Observação:
Em todas as funções, quando apresentamos a expressão "(número)", na verdade
queremos
nos referir a um argumento que será processado pela função e que poderá ser: um
número,
uma variável ou o conteúdo de um objeto (propriedade value).
Criando Novas Instâncias
Através do operador new podem ser criadas novas instâncias a objetos já existentes,
mudando o
seu conteúdo, porém, mantendo suas propriedades.
A sintaxe geral é a seguinte:
NovoObjeto = new ObjetoExistente (parâmetros)
Ex1.
MinhaData = new Date ()
MinhaData passou a ser um objeto tipo Date, com o mesmo conteúdo existente em Date
(data e hora atual)
Ex2:
MinhaData = new Date(1996, 05, 27)
MinhaData passou a ser um objeto tipo Date, porém, com o conteúdo de uma nova data.
Ex3:
Suponha a existência do seguinte objeto chamado Empresas
function Empresas (Emp, Nfunc, Prod)
{ this.Emp = Emp
this.Nfunc = Nfunc
this.Prod = Prod }
Podemos criar novas instâncias, usando a mesma estrutura, da seguinte forma:
Elogica = new Empresas("Elogica", "120", "Serviços")
Pitaco = new Empresas("Pitaco", "35", "Software")
Corisco = new Empresas("Corisco", "42", "Conectividade")
Assim, a variável Elogica.Nfunc terá o seu conteúdo igual a 120
Manipulando Arrays
O JavaScript não tem um tipo de dado ou objeto para manipular arrays. Por isso, para
trabalhar com
arrays é necessário a criação de um objeto com a propriedade de criação de um array.
No exemplo abaixo, criaremos um objeto tipo array de tamanho variável e com a função de
"limpar" o
conteúdo das variáveis cada vez que uma nova instância seja criada a partir dele.
function CriaArray (n) {
this.length = n
for (var i = 1 ; i <= n ; i++)
{ this[i] = "" } }
Agora podemos criar novas instâncias do objeto "CriaArray" e alimentá-los com
os dados necessários.
NomeDia = new CriaArray(7)
NomeDia[0] = "Domingo"
NomeDia[1] = "Segunda"
NomeDia [2] = "Terça"
NomeDia[3] = "Quarta"
NomeDia[4] = "Quinta"
NomeDia[5] = "Sexta"
NomeDia[6] = "Sábado"
Atividade = new CriaArray(5)
Atividade[0] = "Analista"
Atividade[1] = "Programador"
Atividade[2] = "Operador"
Atividade[3] = "Conferente"
Atividade[4] = "Digitador"
Agora poderemos obter os dados diretamente dos arrays.
DiaSemana = NomeDia[4]
Ocupação = Atividade[1]
DiaSemana passaria a conter Quinta e Ocupação conteria Programador.
Outra forma de se trabalhar com arrays é criar novas instâncias dentro do próprio
objeto do
array, o que proporciona o mesmo efeito de se trabalhar com matriz. Isso pode ser feito da
seguinte forma:
function Empresas (Emp, Nfunc, Prod) {
this.Emp = Emp
this.Nfunc = Nfunc
this.Prod = Prod }
TabEmp = new Empresas(3)
TabEmp[1] = new Empresas("Elogica", "120", "Serviços")
TabEmp[2] = new Empresas("Pitaco", "35", "Software")
TabEmp[3] = new Empresas("Corisco", "42", "Conectividade")
Assim, poderemos obter a atividade da empresa número 3, cuja resposta seria
Conectividade, da
seguinte forma:
Atividade = TabEmp[3].Prod
Obs:
É importante lembrar que, embora os exemplos estejam com indexadores fixos, os
indexadores podem
ser referências ao conteúdo de variáveis.
Manipulando String's
O JavaScript é bastante poderoso no manuseio de String´s, fornecendo ao programador uma
total
flexibilidade em seu manuseio.
Abaixo apresentamos os métodos disponíveis para manuseio de string´s.
string.length - retorna o tamanho da string (quantidade de bytes)
string.charAt(posição) - retorna o caracter da posição especificada (inicia em 0)
string.indexOf("string") - retorna o número da posição onde começa a
primeira "string"
string.lastindexOf("string") - retorna o número da posição onde começa a
última "string"
string.substring(index1, index2) - retorna o conteúdo da string que corresponde ao
intervalo
especificado. Começando no caracter posicionado em index1 e terminando no caracter
imediatamente anterior ao valor especificado em index2.
Ex.
Todo = "Elogica"
Parte = Todo.substring(1, 4)
(A variável Parte receberá a palavra log)
string.toUpperCase() - Transforma o conteúdo da string para maiúsculo (Caixa Alta)
string.toLowerCase() - Transforma o conteúdo da string para minúsculo (Caixa Baixa)
escape ("string") - retorna o valor ASCII da string (vem precedido de %)
unscape("string") - retorna o caracter a partir de um valor ASCII (precedido de
%)
Manipulando Datas
Existe apenas uma função para que se possa obter a data e a hora. É a função Date().
Esta função
devolve data e hora no formato:Dia da semana, Nome do mês, Dia do mês,
Hora:Minuto:Segundo e
Ano
Ex.
Fri May 24 16:58:02 1996
Para se obter os dados separadamente, existem os seguintes métodos:
getDate() - Obtém o dia do mês (numérico de 1 a 31)
getDay() - Obtém o dia da semana (0 a 6)
getMonth() - Obtém o mês (numérico de 0 a 11)
getYear() - Obtém o ano
getHours() - Obtém a hora (numérico de 0 a 23)
getMinutes() - Obtém os minutos (numérico de 0 a 59)
getSeconds() - Obtém os segundos (numérico de 0 a 59)
No exemplo abaixo obteremos o dia da semana. Para tal, utilizaremos a variável DataToda
para armazenar data/hora e a variável DiaHoje para armazenar o número do dia da semana.
DataToda = new Date()
DiaHoje = DataToda.getDay()
Para obter o dia da semana alfa, teremos que construir uma tabela com os dias da semana e
utilizar a variável DiaHoje como indexador.
function CriaTab (n) {
this.length = n
for (var x = 1 ; x<= n ; x++)
{ this[x] = "" } }
NomeDia = new CriaTab(7)
NomeDia[0] = "Domingo"
NomeDia[1] = "Segunda"
NomeDia [2] = "Terça"
NomeDia[3] = "Quarta"
NomeDia[4] = "Quinta"
NomeDia[5] = "Sexta"
NomeDia[6] = "Sábado"
DiaSemana = NomeDia[DiaHoje]
Para criar uma variável tipo Date com o conteúdo informado pela aplicação, existe o
método
set. Assim, temos os seguintes métodos: setDate, setDay, setMonth, setYear, setHours,
setMinutes e setSeconds.
Seguindo o exemplo acima, para mudar o mês para novembro, teríamos:
DataToda.setMonth(10)
Exemplos adicionais serão encontrados no capítulo "Usando Timer e Date".
Interagindo com o Usuário
A interação com o usuário se dá através de objetos para entrada de dados (textos),
marcação de
opções (radio, checkbox e combo), botões e link's para outras páginas.
Conceitualmente, os objetos são divididos em: Input, Textarea e Select.
O objeto Input divide-se (propriedade Type) em:
Password
Text
Hidden
Checkbox
Radio
Button
Reset
Submit
A construção destes objetos é feita pela linguagem HTML (HiperText Mark-up Language).
Portanto, é
aconselhável que sejam criados utilizando-se ferramentas de geração de páginas HTML,
como o
HotDog ou, mais recomendado, FrontPage.
Objeto Input TEXT
É o principal objeto para entrada de dados.
Suas principais propriedades são: type, size, maxlength, name e value.
type=text : Especifica um campo para entrada de dados normal
size : Especifica o tamanho do campo na tela.
maxlength : Especifica a quantidade máxima de caracteres permitidos.
name : Especifica o nome do objeto
value : Armazena o conteúdo do campo.
Os eventos associados a este objeto são: onchange, onblur, onfocus e onselect.
Ex:
<form name="TText">
<p>Entrada de Texto <input type=text size=20 maxlength=30
name="CxTexto"
value="" onchange="alert ('Voce digitou ' + CxTexto.value)">
</p>
</form>
Objeto Input PASSWORD
É o objeto para entrada de Senhas de acesso (password). Os dados digitados neste objeto
são
criptografados e, só são interpretados (vistos) pelo "server", por razões de
segurança.
Suas principais propriedades são: type, size, maxlength, name e value.
type=password : Especifica um campo para entrada de senha. Os dados digitados são
substituidos
(na tela) por "*".
size : Especifica o tamanho do campo na tela.
maxlength : Especifica a quantidade máxima de caracteres permitidos.
name : Especifica o nome do objeto
value : Armazena o conteúdo digitado no campo.
Os eventos associados a este objeto são: onchange, onblur, onfocus e onselect.
Ex:
<form name="TPassword">
<p>Entrada de Senha<input type=password size=10 maxlength=10
name="Senha" value="">
</p>
</form>
Objeto Input HIDDEN
É um objeto semelhante ao input text, porém, invisível para o usuário. Este objeto
deve ser utilizado
para passar informações ao "server" (quando o formulário for submetido) sem
que o usuário tome
conhecimento. Suas propriedades são: name e value.
name : Especifica o nome do objeto.
value : Armazena o conteúdo do objeto
Ex:
<form name="THidden">
<input type=hidden size=20 maxlength=30 name="HdTexto" value=""
>
</form>
</p>
Objeto Input CHECKBOX
São objetos que permitem ao usuário ligar ou desligar uma determinada opção.
Suas principais propriedades são: name, value e checked.
name : Especifica o nome do objeto
value : Especifica o valor que será enviado ao "server" se o objeto estiver
ligado (checked).
Caso seja omitido, será enviado o valor default "on" .
Esta propriedade também serve para ativar comandos lógicos, testando-se a condição
de "checked".
checked : Especifica que o objeto inicialmente estará ligado
O único evento associado a este objeto é onclick.
Ex:
No exemplo abaixo, criaremos um objeto input.text e três objetos checkbox. O primeiro
checkbox,
quando ativado, transformará o texto em caracteres minúsculos. O segundo checkbox,
quando ativado,
transformará o texto em caracteres maiúsculos. O terceiro checkbox, quando ativado,
dará um aviso do
conteúdo que será recebido pelo "server" caso o formulário seja submetido
para este.
<SCRIPT>
function AltMaiusc () {
document.TCheck.Muda.value = document.TCheck.Muda.value.toUpperCase()
document.TCheck.Opt1.checked = false
}
function AltMinusc () {
document.TCheck.Muda.value = document.TCheck.Muda.value.toLowerCase()
document.TCheck.Opt2.checked = false
}
</SCRIPT>
<p>
<form name="TCheck">
Muda Case <input type=text size=20 maxlength=20 name="Muda"> </p>
<p>
Minusculo<input type=checkbox name="Opt1" value="1" checked
onclick="if (this.checked)
{ AltMinusc() } ">
Maiusculo<input type=checkbox name="Opt2" value="2"
onclick="if (this.checked)
{ AltMaiusc() } ">
Demo valor<input type=checkbox name="Opt3"
onclick="if (Opt3.checked)
{alert ('Server recebera = ' + Opt3.value) } ">
</p>
</form>
Existe ainda uma outra forma de manipular este objeto, em forma de array, que é a
seguinte:
form.elements[index].propriedade. Esta não é uma boa forma porque o index é único
dentro de um
formulário, exigindo muito cuidado quando se acrescenta ou se deleta um objeto, pois,
neste caso,
haverá um natural deslocamento do index, podendo comprometer a lógica.
Objeto Input RADIO
São objetos que permitem ao usuário a escolha de apenas uma alternativa, diante de uma
série de
opções.
Suas principais propriedades são: name, value e checked.
name : Especifica o nome do objeto. Para caracterizar uma mesma série de opções, todos
os
objetos desta série têm que ter o mesmo "name".
value : Especifica o valor que será enviado ao "server" se o objeto estiver
ligado (checked). Caso
seja omitido, será enviado o valor default "on" . Esta propriedade também
serve para
ativar comandos lógicos, testando-se a condição de "checked".
checked : Especifica que o objeto inicialmente estará ligado
Para utilização deste objeto é importante o conhecimento de outras propriedades
associadas:
Objeto.length : Retorna a quantidade de opções existentes na lista
Objeto.[index].value : retorna o texto (value) associado a cada opção
Objeto.[index].checked : retorna verdadeiro ou falso
O único evento associado a este objeto é onclick.
Ex. No exemplo abaixo temos dois set's de objetos radio. O primeiro tem o objetivo de
mudar a cor de
fundo do documento atual. O segundo tem o objetivo levar informações ao
"server".
<p>Radio</p>
<p> <input type=radio name="Rad" value="1"
onclick="document.bgColor='green'"> Fundo Verde
<input type=radio name="Rad" value="2"
onclick="document.bgColor='blueviolet'"> Fundo Violeta
<input type=radio name="Rad" value="3"
onclick="document.bgColor='#FFFF00'"> Fundo Amarelo
</p>
<p>
<input type=radio name="Rad2" value="1"> Solteiro
<input type=radio name="Rad2" value="2"> Casado
<input type=radio checked name="Rad2" value="3"> Tico Tico
</p>
Objeto Input BUTTON
Este objeto tem por finalidade criar um botão ao qual se possa atrelar operações
lógicas, a serem
executadas quando o mesmo receber um click.
Suas propriedades são: name e value.
name : Especifica o nome do objeto.
value : Especifica o nome que aparecerá sobre o botão
O único evento associado a este objeto é onclick.
Ex.
<p>
<form method="POST" name="TstButton">
Digite um Texto <input type=text size=30 maxlength=30 name="Teste"
value="">
</p><p>
Click no Botao <input type=button name="Bteste" value="Botao de
teste"
&nbs
Lúcifer™ HP - Copyright 99 - Todos os Direitos Reservados
Esta proibido qualquer copia dessa pagina sem a autorização do Lúcifer™.
Dúvidas e sugestões: jlucifer@hotmail.com