Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
M0
9
UF1
Clase 3
Clases
1a jueves 15/01/15
2a jueves 29/01/15
3a jueves 12/02/15
4a jueves 26/02/15
5a jueves 12/03/15
6a jueves 26/03/15
7a jueves 9/04/15
Uso del foro!!
www.ucoc.es
www.ucoc.es
TEMA 12
PROGRAMACIN DE DOCUMENTOS
WEB UTILIZANDO LENGUAJES DE
SCRIPT DE CLIENTE
www.ucoc.es
REQUISITOS
PC Windows, Linux, OSX
Editor de textos:
Editores con pocas funcionalidades: Bloc de
notas
Aplicaciones WYSIWYG (Lo que ves es lo que
obtienes): Dreamweaver
Permiten escribir un documento viendo
directamente el resultado final.
Navegador web
www.ucoc.es
OBJETIVOS
Incluir JavaScript en HTML
Conocer la sintaxis de JavaScript
repasando conceptos de programacin en
general
Validar formularios HTML con JavaScript
www.ucoc.es
Qu es JavaScript?
JavaScript es un lenguaje interpretado, por lo que
no es necesario compilar los programas para
ejecutarlos.
Se utiliza principalmente para crear pginas
dinmicas.
Una pgina dinmica es aquella que incorpora
animaciones, acciones que se activan al pulsar
botones y ventanas con mensajes de aviso
www.ucoc.es
HISTORIA
A principios de los aos 90, los usuarios de Internet
se conectaban con conexiones muy lentas.
Empezaban a desarrollarse las primeras aplicaciones
web y stas ya empezaban a incluir formularios.
Con una navegacin lenta y aplicaciones cada
vez ms complejas, surgi la necesidad de un
lenguaje que se ejecutara en el lado del usuario, en
el navegador. De esta manera si un formulario no era
rellenado de forma correcta por el usuario, no se le
haca esperar mucho tiempo hasta que el servidor
volviera a mostrar el formulario indicando los errores
existentes.
www.ucoc.es
HISTORIA
www.ucoc.es
www.ucoc.es
www.ucoc.es
www.ucoc.es
htmlJavascript.html
www.ucoc.es
NOSCRIPT
Algunos navegadores no disponen de soporte completo de
JavaScript, otros navegadores permiten bloquearlo parcialmente
e incluso algunos usuarios bloquean completamente el uso de
JavaScript, creen que as navegan de forma ms segura.
El lenguaje HTML define la etiqueta<noscript>para mostrar un
mensaje al usuario cuando su navegador no puede ejecutar
JavaScript. El siguiente cdigo muestra un ejemplo del uso de la
etiqueta<noscript>:
<head> ... </head> <body> <noscript>
<p>Bienvenido</p> <p>La pgina requiere JavaScript.
Actvalo.</p> </noscript> </body>
La etiqueta<noscript>se debe incluir en el interior de la
etiqueta<body>(normalmente se incluye al principio
de<body>). El mensaje que muestra<noscript>puede incluir
cualquier elemento o etiqueta XHTML.
www.ucoc.es
EL PRIMER SCRIPT
En este ejemplo, el script se incluye como un bloque de cdigo
dentro de una pgina XHTML. Aunque el cdigo del script se
puede incluir en cualquier parte de la pgina, se recomienda
incluirlo en la cabecera del documento, es decir, dentro
de la etiqueta<head>.
El cdigo JavaScript se debe incluir entre las
etiquetas<script>...</script>. Es necesario definir el
atributotypede la etiqueta<script> como text/javascript.
Una vez definida la zona en la que se incluir el script, se
escriben todas las sentencias que forman la aplicacin. Este
primer ejemplo es tan sencillo que solamente incluye una
sentencia:alert("Bienvenidos a IAW!");.
La instruccinalert()es una de las utilidades que incluye
JavaScript. Permite mostrar un mensaje en la pantalla del
usuario. Este primer script mostrar una ventana con el
mensaje"Bienvenidos a IAW!".
www.ucoc.es
EL PRIMER SCRIPT
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-88591" />
<title>El primer script en JavaScript de IAW</title>
<script type="text/javascript">
alert("Bienvenidos a IAW!");
</script>
</head>
<body>
<p>Esta pgina contiene el primer script en JavaScript de la asignatura de
IAW</p>
</body>
</html>
www.ucoc.es
EL PRIMER SCRIPT
En Internet Explorer
En Google Chrome
www.ucoc.es
www.ucoc.es
codigo.js
//Al cargarse el archivo JavaScript, se muestra un
mensaje
alert("Bienvenidos a IAW");
Ejemplo:
ejemplo1.html
www.ucoc.es
SINTAXIS
No se tienen en cuenta los espacios y las lneas nuevas: como sucede
con XHTML, el intrprete de JavaScript ignora cualquier espacio
en blanco sobrante, por lo que el cdigo se puede ordenar para
entenderlo mejor (tabulado, comentarios)
Se distinguen las maysculas y minsculas, con lo que si
intercambiamos minsculas por maysculas el script no funciona.
No se define el tipo de las variables: No hace falta indicar el tipo
de dato que almacenar. De esta forma, una misma variable
puede almacenar diferentes tipos de datos.
No es necesario terminar las sentencias con ; aunque es
conveniente seguir la tradicin de terminar las sentencias con el
carcter ;
Los comentarios de una sola lnea se hacen con // y los de multilnea
con /* */. Hay que tener cuidado con los comentarios, ya que esa
informacin se enva al navegador del usuario, aunque no se
visualiza.
www.ucoc.es
Sintaxis bsica
VARIABLES
Las variables en JavaScript se declaran mediante la palabra
reservadavar. Despus veremos cuando una variable es local o
global.
No es obligatorio inicializar las variables cuando se declaran.
El nombre de una variable tambin se conoce como identificador y
debe cumplir las siguientes normas:
Slo puede estar formado por letras, nmeros y los smbolos $ y _
El primer carcter no puede ser un nmero
www.ucoc.es
Variables
Asignacin de valor
Numricas:
Se utilizan para almacenar integerso floats. El valor se asigna
indicando directamente el nmero entero o decimal. Los decimales
utilizan el carcter.para separar la parte entera de la parte
decimal
Var total = 552.80;
Cadenas de texto:
Se utilizan para almacenar caracteres, palabras o frases de texto. Se
encierra el valor entre comillas dobles o simples, para delimitar su
comienzo y su final
Var mensaje = Bienvenidos a IAW
Si el texto contiene comillas simples o dobles, se debe encerrar el
texto con las comillas simples o dobles que no utilice el texto:
Var mensaje = Bienvenidos a la asignatura de \IAW\ del mdulo de
ASIX
www.ucoc.es
Variables
A veces las cadenas de texto contienen tanto comillas
simples como dobles, adems existen caracteres difciles
de incluir en las variables de texto. Entonces se sustituye el
carcter problemtico por una combinacin de caracteres.
Nueva lnea
\n
Tabulador
\t
Comilla simple \
Comilla doble \
Barra inclinada \\
Ejemplo:
Var mensaje = Bienvenidos a la asignatura de \IAW\ del
mdulo de ASIX
www.ucoc.es
Arrays
Es una zona de almacenamiento continuo, que almacena una
serie de elementos. Si necesitamos guardar una serie de valores
es preferible hacerlo con un array que no tener que declarar
muchas variables.
Cmo se define un array?
Var paises = [Alemania, Francia, Italia, Holanda, Espaa,
Portugal];
Cmo acceder a una posicin del array?
Var pais = paises[5];
Recordar que en los arrays las posiciones empiezan por 0. La
variable pais contendr el valor Portugal.
paises.html
www.ucoc.es
OPERADORES
Los operadores permiten realizar operaciones con el contenido de
las variables, modificar su valor, compararlas As los programas,
pueden realizar clculos aritmticos y hacer comparaciones lgicas.
Asignacin
El smbolo es = y se utiliza para guardar un valor en una variable. A la
izquierda del = se indica el nombre de la variable, a la derecha otra variable o
el valor.
Var resultado = 100;
Matemticos
Los operadores son: suma +, resta -, multiplicacin *, divisin /, mdulo %
(resto de la divisin)
Var numero1 = 15;
Var numero2 = 5;
Resultado = numero1 + numero2; //resultado = 20
Resultado = numero1 numero2; //resultado = 10
Resultado = numero1 * numero2; //resultado = 75
Resultado = numero1 / numero2; //resultado = 3
Resultado = numero1 % numero2; //resultado = 0
www.ucoc.es
OPERADORES
Los operandos matemticos se pueden combinar con el operador
de asignacin:
Var Resultado = 10;
resultado += 5; //resultado = 15
resultado -= 5; //resultado = 5
resultado *= 5; //resultado = 50
resultado /= 5; //resultado = 2
resultado %= 5; //resultado = 0
Incremento y decremento
Se utilizan para incrementar o decrementar las variables numricas
en una unidad. Los operandos se pueden poner antes o despus
de las variables, y el resultado puede ser diferente:
resultado = 10;
++resultado; //Resultado = 11
resultado--; //Resultado = 10
www.ucoc.es
OPERADORES
Diferencias entre poner los operandos delante o detrs de las
variables:
Var numero1 = 10;
Var numero2 = 5;
Resultado = numero1++ + numero2 // resultado = 15. numero1 = 11.
Resultado =++numero1 + numero2 // resultado = 16. numero1 = 11.
Negacin !
Booleana
variable = true;
!variable = false;
Numrica
var numero1 = 5;
resultado = !numero1; //false. Si negamos cualquier numero diferente de 0 el
resultado es false
Texto
var texto = Bienvenidos a IAW;
resultado = !texto; //false. Si negamos una cadena de texto que no esta vaca
el resultado es false
www.ucoc.es
OPERADORES
AND
El resultado de esta operacin lgica, es true si los dos
operandos son true, es false en cualquier otro caso. El
smbolo es &&
Var operando1 = true;
Var operando2 = true;
Resultado = operando1 && operando2; //resultado = true
OR
El resultado de esta operacin lgica, es false si los dos
operandos son false, es true en cualquier otro caso. El
smbolo es ||
Var operando1 = false;
Var operando2 = false;
Resultado = operando1 && operando2; //resultado = false
www.ucoc.es
OPERADORES
Relacionales
Los operadores relacionales son: mayor que >, menor que <, mayor
o igual que =>, menor o igual que =<, igual que == y diferente
de !=
Var numero1 = 10
Var numero2 = 5;
Resultado = numero1 >= numero2 //resultado = true
Resultado = numero1 == numero2 //resultado = false
www.ucoc.es
ESTRUCTURAS DE CONTROL
Estructura if
Si se cumple la condicin, se ejecutarn las instrucciones
contenidas entre las llaves{}
If(condicion){
Instrucciones
}
Estructura ifelse
Si se cumple la condicin, se ejecutarn las instrucciones
contenidas contenidas dentro del if. Si la condicin no se
cumple se ejecutarn las instrucciones contenidas dentro
del else.
if(condicion){
Instrucciones
}
else{
Instrucciones
}
www.ucoc.es
ESTRUCTURAS DE CONTROL
La estructura ifelse se puede encadenar para realizar varias
comprobaciones seguidas:
If(condicion) {
Instrucciones
}
Else if(condicion) {
Instrucciones
}
Else if(condicion) {
Instrucciones
}
Else {
Instrucciones
}
dni.html
www.ucoc.es
ESTRUCTURAS DE CONTROL
Si la estructura pasa a tener muchas condiciones, en lugar de
utilizar ifelse, es ms eficiente utilizar la estructura switch,
est diseada para hacer mltiples comprobaciones de una
sola variable.
Switch(variable) {
Case valor1:
Break;
Case valor2:
Break;
Case valor_n:
Break;
Default:
Break;
}
www.ucoc.es
www.ucoc.es
www.ucoc.es
www.ucoc.es
CADENAS DE TEXTO
Calcular la ltima posicin en la que se encuentra un carcter en
una cadena de texto. Si no encuentra el valor devuelve -1
Var posicion = mensajeFinal.lastIndexOf(W);
Extraer una subcadena de una cadena de texto
Var subcadena = mensajeFinal.substring(1, 7); //subcadena =
ienveni
Si slo se indica un valor, retorna la subcadena a partir de esa
posicin hasta el final de la cadena de texto
Convertir una cadena de texto en un array de cadenas de
texto
Split(separador) el separador indica el carcter que separa
Var texto = mensajeFinal.split( ); //texto = [Bienvenidos, a, la,
asignatura, de, IAW]
Var saludo = Bienvenidos;
Var letras = saludo.split(); //letras = [B, i, e, n, v, e, n,
i, d, o, s]
www.ucoc.es
www.ucoc.es
www.ucoc.es
FUNCIONES
Cuando una aplicacin pasa a ser compleja es probable que
haya
instrucciones que tengan que repetirse. El
cdigo pasa a ser ms largo de lo necesario debido a las
instrucciones repetidas, y si se quiere modificar algo se
tiene que hacer en todas las instrucciones repetidas. Para
solucionar este problema se utilizan las funciones. El cdigo
se escribe una vez y se llama a la funcin las veces que la
tengamos que utilizar.
Su definicin es:
Function nombreFuncion() {
Instrucciones
}
Para realizar la llamada a la funcin:
nombreFuncion();
www.ucoc.es
FUNCIONES
Parmetros y valores de retorno
A las funciones se le pueden pasar variables para ser usadas
dentro de las
funciones, estas variables son los parmetros y van escritas
entre los parntesis
de las funciones.
El orden de los parmetros (argumentos) es importantsimo,
el primer argumento que se le indica en la llamada de la
funcin, es el primer valor que espera la funcin y as
sucesivamente.
Ejemplo:
Function nombreFuncion(arg1, arg2){
Instrucciones
}
Llamada a la funcin:
nombreFuncion(arg1, arg2);
FUNCIONES
Function nombreFuncion(arg1, arg2){
Instrucciones
return variable;
}
Llamada a la funcin:
Var resultado = nombreFuncion(arg1, arg2);
parImpar.html
www.ucoc.es
www.ucoc.es
www.ucoc.es
EVENTOS
Los scripts esperan a que el usuario haga algo (mover el
ratn, pulsar un botn, cerrar una ventana), entonces el
script responde a la accin del usuario procesando una
informacin y generando un resultado.
JavaScript define numerosos eventos que permiten una
interaccin completa entre los usuarios y las aplicaciones
web. JavaScript permite asignar una funcin event handler
o manejador de eventos a cada uno de los eventos.
El nombre de cada evento se construye mediante el
prefijoon, seguido del nombre en ingls de la accin
asociada al evento. El evento que ms familiar os puede
resultar es el evento onclick (clicar un elemento con el
ratn).
www.ucoc.es
EVENTOS
tablaEventos.html
www.ucoc.es
FORMULARIOS
<form name="formulario">
<input type="text" name="elemento" />
</form>
formcss.html
www.ucoc.es
function validar(formulario){
if(blanco(telefono.value)==false){
alert("Introduzca el Telfono por favor.")
telefono.focus();
return false;
}
otras funciones que validan los otros campos
}
function blanco(campo){
if (campo=="" || campo==null){
return false;
else
return true;
}
www.ucoc.es
EXPRESIONES REGULARES
Son una serie de caracteres que forman un patrn, para
poder comparar ste patrn con otro conjunto de
carcteres y ver las coincidencias que se producen.
Ya tenis que haber usado patrones otras veces, por ejemplo
con el comando grep de Linux, cuando queris buscar algo
en un fichero, o en DOS cuando hacis un dir *.*, donde el
patrn * coincide con cualquier cadena de carcteres.
expresion.html
Si alguien quiere profundizar en el tema:
expresionesRegulares.html
Ejemplo final: formcss.html
www.ucoc.es
Preguntas?
www.ucoc.es