Fabio Proietti (c) 2012 Licenza:

Documenti analoghi
Introduzione alla programmazione orientata agli oggetti

Programmazione web lato client con JavaScript. Marco Camurri 1

scrivere window.alert(). 2 Nell esempio sarebbe scritto solo var hello, senza pertanto attribuire alla variabile hello alcun valore

IL PRIMO PROGRAMMA IN C

Guida introduttiva al PHP

Excel. Il foglio di lavoro. Il foglio di lavoro Questa viene univocamente individuata dalle sue coordinate Es. F9

Gli statement. Gli statement. Gli statement. Gli statement. Gli statement

HTML. I tag HTML (parte 1)

D B M G Il linguaggio HTML

Calcolare con il computer: Excel. Saro Alioto 1

Programmazione: variabili e operatori. Variabili

EXCEL: FORMATTAZIONE E FORMULE

@2011 Politecnico di Torino 1

Prefazione... xi. Da leggere prima di iniziare...xiv. Capitolo 1 Introduzione a JavaScript Sezione A Programmazione, HTML e JavaScript...

IMMAGINI INTRODUZIONE

Lettura da tastiera e scrittura su monitor

Capitolo Tavola e grafico

INTRODUZIONE ALLA PROGRAMMAZIONE

Visual basic base Lezione 03. Gli eventi

Modifica Pagina Web. Pulsante LogOut: cliccare per uscire dall'ambiente di amministrazione

Guida pratica alla creazione di pagine web

EXCEL: FORMATTAZIONE E FORMULE

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo

Sviluppo di programmi

La stampa unione in Word 2007

3. Le routine evento in Access 2000/2003

Corso sul PACCHETTO OFFICE. Modulo Access

Access 2007 Colonna di ricerca

Javascript. - Corso Web Design - Media Dream Academy. Stefano Gaborin

Inoltrare un messaggio.

MANUALE UTENTE UPLOADER JAVA

Tutorial Calcolatrice

Definizione di file. Directory e file File binari e file di testo

Javascript e CSS nelle pagine WEB

ACCESS. Database: archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati.

Guida all'uso del simulatore Calcolatrice Multibase, versione 1.0

Introduzione al MATLAB c Parte 3 Script e function

Introduzione a Matlab

HTML. Hyper Text Mark-Up Language

Individuazione di sottoproblemi

DEFINIZIONI SMART E RELATIVE ESERCITAZIONI

MANUALE UTENTE. Portale Web Scambio sul posto GSE IMPRESE DI VENDITA. stato documento draft approvato consegnato

LEZIONE 4. Per semplificarne la comprensione della tastiera possiamo suddividere i tasti in diversi gruppi in base alla funzione che possono svolgere:

Excel Base- Lezione 3. Barbara Pocobelli Estav Nord Ovest. Il comando Trova

Strutture di Controllo

JAVASCRIPT. Tale file è associato alla pagina web mediante il tag <script> inserito nella sezione <head> con la seguente sintassi:

Variabili e Istruzioni

1 Combinazioni lineari.

Portale Servizi ISP Manuale utente SOMMARIO

LE MASCHERE. Maschera standard. Maschera semplice. Questa maschera però non consente di nascondere alcuni campi e visualizza i record uno ad uno.

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.

Linguaggi e Ambienti di Programmazione

Menù principale di Calc

Formazione a Supporto dell Inserimento Lavorativo. Elementi di Word avanzato. Docente Franchini Gloria

Programmazione in Java (I modulo)

Evoluzioni Software s.n.c. SLpw Guida all'uso Pag.1 di 49

3.6.1 Inserimento. Si apre la finestra di dialogo Inserisci Tabella:

Stampa unione II: Utilizzare la barra multifunzione ed eseguire una stampa unione avanzata

L INTERFACCIA GRAFICA DI EXCEL

Database Modulo 6 CREAZIONE DI MASCHERE

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

Foglio Elettronico Lezione 1

Modulo 3 DATI E OPERATORI. 1. Assegnare i dati da tastiera 2. Variabili e tipi di dati 3. Le stringhe 4. Un po di logica

HTML: FORM. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

MANUALE MODULO WIDGET EVENT TRACKING LICENZA SaaS

CONSIGLI E TRUCCHI. Parte seconda

EXCEL. Alfabetizzazione Informatica Prof. GIUSEPPE PATTI

Infor LN [GUIDA INFOR LN] [GUIDA INFOR LN] Baltur S.p.A. Rev /2013. Guida all utilizzo del Gestionale Infor LN per le Agenzie Baltur

Foglio elettronico Microsoft Office Excel 2003

5 Invio di Integrazioni e Conformazioni (per pratiche già trasmesse)

Sistemi Di Elaborazione Dell informazione

Inserire record. Microsoft Access. Inserire/modificare record. Inserire record. Cancellare record. Inserire/modificare record

APVE in Rete Modulo 8 Excel nozioni di base e esercitazioni su economia domestica

guida dell'utente modulo: [ idocmail ] LA GESTIONE DEI FILTRI e delle REGOLE in idocmail

Access. P a r t e t e r z a

La struttura e la visualizzazione dei corsi

14Ex-Cap11.qxd :20 Pagina Le macro

U.T.E FOGLIO ELETTRONICO. Università della Terza Età. Sede di Novate Milanese. Corso Informatica Approfondimento. Docente: Giovanni Pozzi

Capitolo 4: Tabelle. y(x) = x 3 ì 2x. Capitolo 4: Tabelle 67. Nota: le tabelle non sono disponibili nel modo di rappresentazione grafica 3D.

Breve introduzione al linguaggio R

Appunti sui fogli di stile

WebDisk. TeamPortal - WebDisk

Il tag form indica l'inizio della costruzione di un modulo. Necessita del tag di chiusura

LE PRIME ACTIVE SERVICE PAGE: oggetto REQUEST

Proprietà delle potenze

U.T.E Università della Terza Età

DMX LIGHTPLAYER Introduzione...2 Libreria DMX...3 Programmazione dei canali...7 Creazione di uno show...11

Manuale Stampe Registro elettronico SOGI

Si può scrivere un programma anche utilizzando un editor di testo (Blocco Note, WordPad, ) ricordandosi comunque di salvarlo con l estensione.py.

Raccolta e memorizzazione dei dati immessi nei moduli dai visitatori

Come ragiona il computer. Problemi e algoritmi

Microsoft Access (parte 5) Query. Query. Query. Query. Creare una query

1 Calcoli numerici e algebrici

Espressione di chiamata di funzione

Prof. Pagani Corrado HTML

Funzioni costruttore e istanza di un'oggetto

Linguaggi di Markup. Violetta Lonati. Dipartimento Scienze dell Informazione Università degli Studi di Milano

Manuale d utilizzo. Indice:

Fondamenti di Informatica T-1

Analisi dei dati con Excel

Transcript:

data di ultima modifica 30/01/2013 Prerequisiti per la comprensione aver usato almeno una volta l'editor notepad++ aver creato almeno una volta una pagina web, usando <h1> <p>

Una calcolatrice in javascript È utile ricordare che il linguaggio HTML viene usato per creare il contenuto delle pagine web, il linguaggio CSS per modificarne l'aspetto esteriore, cioè la parte estetica, mentre il linguaggio Javascript è un vero linguaggio di programmazione, per l'elaborazione automatizzata dei dai. Quest'ultimo offre, quindi, la possibilità di aggiungere alla pagina capacità di calcolo e interattività con le attività svolte dall'utente. Questi tre linguaggi possono essere usati insieme per creare le pagine web. Le pagine web sono dei file di testo, di solito con estensione.htm oppure.html, che: vengono creati usando un editor di testo non formattato, come notepad++ vengono visualizzate usando un browser, come Mozilla Firefox. Come primo esempio scopriremo il funzionamento di una semplice calcolatrice che fa il prodotto di due numeri. Si tratta di un esempio apparentemente banale, ma utile come primo esempio. Suggerimenti: provare almeno una volta ad utilizzare il programma finito, fornito dal docente durante la lettura di questo documento, di tenere aperto il codice riportato in fondo a questo documento. L'algoritmo potrebbe essere descritto con le seguenti parole: 1. chiedere di inserire i dati 2. leggere i dati dell'utente nelle variabili numero1 e numero2 3. memorizzare il risultato dell'operazione nella variabile risultato 4. visualizzare la variavile risultato Oppure potrebbe essere rappresentato tramite il seguente diagramma di flusso: Nella prima istruzione si chiede di visualizzare la frase "inserire dati" (scritta per questo motivo tra virgolette). Nella seconda istruzione si ricevono i dati inseriti: numero1 e numero2 sono due variabili dove vengono memorizzati i dati inseriti dall'utente. Nella variabile risultato viene memorizzato il risultato dell'operazione aritmetica (l'asterisco è il simbolo usato per indicare la moltiplicazione). Ricordare quali sono i significati delle diverse forme usate in questo diagramma... Domanda: quali sono i dati di input e quali di output?

La struttura di una pagina web Sebbene il programma potrebbe essere realizzato, traducento questo diagramma di flusso usando esclusivamente il linguaggio Javascript, in questo esempio si userà anche il linguaggio HTML. HEAD Solo le parti di input e di output possono essere create usando il linguaggio HTML, tutto il resto dovrà essere necessariamente in HTML Javascript. Se si vuole rendere più gradevole l'aspetto della pagina si può aggiungere anche qualcosa in linguaggio CSS. La pagina web ha una struttura formata da elementi contenuti uno BODY all'interno dell'altro, la cui posizione è determinata da delle parole chiave chiamate tag. Ecco come si presenta la struttura di una pagina vuota: <html> Ogni parola chiave è chiamata "tag" (che significa etichetta) ed è racchiusa tra un simbolo minore e maggiore (chiamate anche parentesi angolari). Ogni tag di solito deve essere prima "aperto" e poi "chiuso". La chiusura si fa aggiungendo il carattere "slash" dentro il tag. In questo <head> modo ogni coppia di tag (uno di apertura e uno di chiusura) racchiude una parte della pagina, un testo o altri tag. É preferibile scrivere i tag in </head> minuscolo. <body> </body> </html> i tag <html> racchiudono tutta la pagina i tag <head> racchiudono l'intestazione (o testata) i tag <body> racchiudono il corpo della pagina (dove si trova quello che si vede nel browser) In questo esempio ogni tag si trova su una nuova riga, ma non è importante andare a capo. Inoltre non è importante nemmeno il numero degli spazi che viene inserito, che è utilizzato solo per facilitare la lettura del codice. Per sapere quali sono gli altri tag, e come si usano visitare: http://www.w3schools.com/html/html_reference.asp

Creazione dell'area di input Per prendere pratica con il linguaggio HTML, provare a creare una pagina che contiene solo il form con i campi di testo e il pulsante. Per realizzare la frase "Inserire dati" si può usare il tag <h1>, mentre, per realizzare le caselle dove inserire i dati e il pulsante da cliccare, si possono usare i tag <form> e <input>.questa parte dovrà essere visibile nel browser, quindi sarà a sua volta contenuta nel tag <body>. Domanda: se <form> è un tag "contenitore", allora quali sono i tag contenuti al suo interno? Come si vede dal codice, mentre <form> è un tag contenitore (con tag di apertua e di chiusura), <input> non è contenitore, quindi non si deve chiudere (si dice che si auto-chiude). Provare ad aprire la pagina appena creata usando il browser per verificare che i tag input sono visibili come delle caselle di testo, mentre il tag <form> non è un elemento visibile. Rendere visibile un contenitore Per aggiungere elementi di decorazione, si può usare il linguaggio CSS. Poiché il CSS non aggiunge elementi visibili nel browser (come <h1> o <input>), ma solo una decorazione, il codice CSS può essere contenuto nel tag <head>. Il tag <head> conterrà <style>, che a sua volta conterrà le regole in CSS. Provare il seguente codice per vedere un bordo rosso:

Variabili Dopo che l'utente ha inserito i valori questi devono essere memorizzati dentro la memoria del computer. Per farlo facilmente si usa il concetto di variabile, analogo a quello usato in matematica: una variabile è un contenitore per i dati; una variabile può contenere solo un valore alla volta, ma il valore può essere modificato; una variabile deve avere un nome e il suo nome è usato come riferimento ad un'area della memoria centrale. x 7 numero 56 Attributi in HTML Rileggendo il diagramma di flusso visto prima, si vede che ci sono due variabili da inserire e che queste dovranno contenere due numeri. Se in HTML si usa <input> per inserire un elemento di input (un campo di testo), e se chiamiamo questi contenitori n1 ed n2, allora il codice dovrà essere modificato, aggiungendo l'attributo name (in verde) dentro il tag <input>: In questa immagine l'attributo è di colore verde, mentre il valore assegnato è di colore viola. Da questo momento in poi, si aggiungeranno spesso anche altri attributi nei tag. Nell'ultima riga dell'ultima figura, si può notare che dentro il tag <input> è possibile usare anche l'attributo type per specificare la forma di un elemento di input (un pulsante). Aprire il file appena creato usando il browser e verificare la presenza di un nuovo pulsante. Nella seguente tabella sono riassunti i principali attributi che si possono usare con <input>: name definisce il nome della variabile corrispondente a quell'elemento type definisce il tipo di elemento value definisce il valore contenuto nell'elemento Gli attributi possono essere usati anche contemporaneamente, separandoli con uno spazio, quindi si possono aggiungere anche type e value: nel seguente codice, "text" significa che la casella è destinata a contenere testo. Anche sul tag <style> si deve aggiungere un attributo<style type="text/css">, ma questo type ha un significato leggermente diverso.

Fino a questo punto, si è utilizzato solo il linguaggio HTML e la pagina permette solo all'utente di inserire i numeri. Per poter elaborare i dati si dovrà utilizzare un altro linguaggio, il Javascritp. La prima operazione da fare è quella di conoscere quali siano i valori contenuti negli elementi di input. In questo momento nel codice HTML ci sono due elementi: n1 e n2 input input variabile n1 n2 HTML La pagina può contenere sia elementi del linguaggio HTML che elementi del linguaggio Javascript. È possibile copiare il valore contenuto negli elementi di input (HTML) in due nuove variabili in Javascript. Questo è necessario per poter elaborare i dati inseriti dall'utente. variabile HTML Javascript input n1 numero1 input n2 numero2 Domanda: dove si possono inserire le istruzioni in Javascript? Il tag <head> conterrà <script>, che a sua volta conterrà le istruzioni in Javascript. Codice in Javascript La prima istruzione, function, serve solo a dare un nome ad un gruppo di istruzioni per poi poterle utilizzare tutte insieme, ad esempio, quando si fa click con il mouse. Il nome della funzione non deve contenere spazi o lettere accentate e deve terminare con le parentesi tonde. Il gruppo di istruzioni dovrà essere racchiuso tra parentesi graffe. La copia dei valori contenuti in n1 e n2, viene realizzata con un'istruzione di assegnazione (si chiamano così tutte le istruzioni che contengono il simbolo dell'uguale):

var definisce una nuova variabile in Javascript numero1 è il nome della nuova variabile A seconda dei gusti, l'istruzione di assegnazione si potrebbe leggere da sinistra verso sinistra: value significa "prendere" il valore di... forms[...]["n1"] specifica il campo input "n1" contenuto nel form di nome "due_numeri" document è un'oggetto che rappresenta il codice html della pagina attualmente aperta nella finestra del browser (che invece è un'oggetto chiamato window) Perché queste parole sono sempre separate dal punto? Forse è troppo presto per spiegarlo... Un programma che contenesse solo questa istruzione di assegnazione non farebbe nulla di utile per l'utente. Le due variabili vanno moltiplicate e poi il risultato va visualizzato: Scopriamo che non è obbligatorio scrivere var davanti ad una nuova variabile :) Le variabili numero1 e numero2 contengono un testo composto da cifre, quindi, dal punto di vista formale, queste variabili andrebbero convertite in formato numerico, in questo modo, usando parsefloat() è una funzione che trasforma un testo in un numero in virgola mobile prima di effettuare l'operazione del prodotto.: risultato=parsefloat(numero1)*parsefloat(numero2); Infine va dedicata una spiegazione particolare all'ultima istruzione. window è l'oggetto che rappresenta la finestra del browser alert è una funzione (si riconosce dal fatto che il suo nome termina con le parentesi tonde) La funzione alert() visualizza un messaggio di avviso all'utente (in questo caso serve solo a produrre l'output del risultato della moltiplicazione). È usata sull'oggetto window, perché blocca la finestra del browser, costringendo l'untente a cliccare su ok. Dentro le parentesi tonde è specificato cosa deve essere visualizzato nell'avviso: la frase tra virgolette viene mostrata sempre esattamente come è scritta dentro le virgolette, seguita poi dal valore numerico contenuto nella variabile "risultato" che è senza le virgolette, e che ogni volta può contenere un risultato diverso. Il simbolo del più non effettua una somma tra numeri, ma è necessario per unire le due parti da visualizzare. Poichè unisce due parole per creare una sola frase, si chiama operatore concatenemento. La frase tra virgolette si chiama anche string. A questo punto, ci sono tutte le istruzioni necessarie, ma provando ad eseguire il programma, il click sul pulsante calcola non funziona... Javascript è un linguaggio che utilizza gli oggetti "event".

Servono a rilevare le azioni svolte dall'utente, come i click del mouse, e a permettere di "reagire", e di eseguire eventuali istruzioni. È possibile attivare gli eventi sugli elementi HTML usando specifici attributi. Per attivare il click su un pulsante basta aggiungere l'attributo onclick seguito dalle istruzioni. A questo punto si può perfezionare l'istruzione Segue il codice dell'intero programma (senza la parte CSS) <html> <head> <script type="text/javascript"> function funzioneprodotto() { var numero1=document.forms["due_numeri"]["n1"].value; var numero2=document.forms["due_numeri"]["n2"].value; } </script> </head> risultato=parsefloat(numero1)*parsefloat(numero2); window.alert("risultato: " + risultato ); <body> <h1>inserire Dati</h1> <form name="due_numeri" > primo numero <input name="n1" type="text" > secondo numero <input name="n2" type="text" > <input type="button" value="calcola!" onclick="funzioneprodotto()" > </html> </form> </body>